Data-driven testing
ಡೇಟಾ-ಡ್ರಿವೆನ್ಡ್ ಟೆಸ್ಟಿಂಗ್ (ಡಿಡಿಟಿ), ಟೇಬಲ್-ಡ್ರಿವೆನ್ಡ್ ಟೆಸ್ಟಿಂಗ್ ಅಥವಾ ಪ್ಯಾರಾಮೀಟರ್ಡ್ ಟೆಸ್ಟಿಂಗ್ ಎಂದೂ ಕರೆಯಲ್ಪಡುತ್ತದೆ, ಇದು ಕಂಪ್ಯೂಟರ್ ಸಾಫ್ಟ್ವೇರ್ನ ಪರೀಕ್ಷೆಯಲ್ಲಿ ಬಳಸಲಾಗುವ ಸಾಫ್ಟ್ವೇರ್ ಪರೀಕ್ಷಾ ವಿಧಾನವಾಗಿದ್ದು, ಪರೀಕ್ಷೆಯ ಇನ್ಪುಟ್ಗಳು ಮತ್ತು ಪರಿಶೀಲಿಸಬಹುದಾದ ಔಟ್ಪುಟ್ಗಳು ಮತ್ತು ಪರೀಕ್ಷಾ ಪರಿಸರ ಸೆಟ್ಟಿಂಗ್ಗಳು ಮತ್ತು ನಿಯಂತ್ರಣವನ್ನು ಹಾರ್ಡ್-ಕೋಡೆಡ್ ಮಾಡದ ಪ್ರಕ್ರಿಯೆಯಾಗಿ ನೇರವಾಗಿ ಷರತ್ತುಗಳ ಟೇಬಲ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು ಪರೀಕ್ಷೆಯನ್ನು ವಿವರಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಸರಳವಾದ ರೂಪದಲ್ಲಿ ಪರೀಕ್ಷಕನು ಟೇಬಲ್ನಲ್ಲಿ ಒಂದು ಸಾಲಿನಿಂದ ಇನ್ಪುಟ್ಗಳನ್ನು ಪೂರೈಸುತ್ತಾನೆ ಮತ್ತು ಅದೇ ಸಾಲಿನಲ್ಲಿ ಸಂಭವಿಸುವ ಔಟ್ಪುಟ್ಗಳನ್ನು ನಿರೀಕ್ಷಿಸುತ್ತಾನೆ. ಟೇಬಲ್ ಸಾಮಾನ್ಯವಾಗಿ ಬೌಂಡರಿ ಅಥವಾ ಪಾರ್ಟಿಷನ್ ಇನ್ಪುಟ್ ಸ್ಪೇಸ್ಗಳಿಗೆ ಅನುಗುಣವಾದ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರುತ್ತದೆ. ನಿಯಂತ್ರಣ ವಿಧಾನದಲ್ಲಿ, ಪರೀಕ್ಷಾ ಸಂರಚನೆಯನ್ನು ದತ್ತಸಂಚಯದಿಂದ "ಓದಲಾಗುತ್ತದೆ". ಪರಿಚಯ ಸಾಫ್ಟ್ವೇರ್ ಅಥವಾ ಪ್ರೋಗ್ರಾಂಗಳ ಪರೀಕ್ಷೆಯಲ್ಲಿ, ಈ ಪರೀಕ್ಷೆಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಹಲವಾರು ವಿಧಾನಗಳು ಲಭ್ಯವಿವೆ. ಈ ಪ್ರತಿಯೊಂದು ವಿಧಾನಗಳು ಸಹ-ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ ಏಕೆಂದರೆ ಅವು ರಚಿಸಲು ಮತ್ತು ತರುವಾಯ ನಿರ್ವಹಿಸಲು ಅಗತ್ಯವಾದ ಪ್ರಯತ್ನದಲ್ಲಿ ಭಿನ್ನವಾಗಿರುತ್ತವೆ. ದತ್ತಾಂಶ-ಚಾಲಿತ ಪರೀಕ್ಷೆಯ ಪ್ರಯೋಜನವೆಂದರೆ ಹೊಸ ವಿಭಾಗಗಳನ್ನು ಕಂಡುಹಿಡಿದಾಗ ಅಥವಾ ಪರೀಕ್ಷೆಯಲ್ಲಿರುವ ಉತ್ಪನ್ನ ಅಥವಾ ವ್ಯವಸ್ಥೆಗೆ ಸೇರಿಸಿದಾಗ ಟೇಬಲ್ಗೆ ಹೆಚ್ಚುವರಿ ಇನ್ಪುಟ್ಗಳನ್ನು ಸೇರಿಸುವುದು ಸುಲಭ. ಅಲ್ಲದೆ, ದತ್ತಾಂಶ-ಚಾಲಿತ ಪರೀಕ್ಷಾ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ, ಪರೀಕ್ಷಾ ಪರಿಸರ ಸೆಟ್ಟಿಂಗ್ಗಳು ಮತ್ತು ನಿಯಂತ್ರಣಗಳು ಹಾರ್ಡ್-ಕೋಡೆಡ್ ಆಗಿರುವುದಿಲ್ಲ. ವೆಚ್ಚದ ಅಂಶವು ಡಿಡಿಟಿಯನ್ನು ಯಾಂತ್ರೀಕೃತಗೊಂಡ ವ್ಯವಸ್ಥೆಗೆ ಅಗ್ಗವಾಗಿಸುತ್ತದೆ ಆದರೆ ಹಸ್ತಚಾಲಿತ ಪರೀಕ್ಷೆಗೆ ದುಬಾರಿಯಾಗಿಸುತ್ತದೆ. ವಿಧಾನಶಾಸ್ತ್ರದ ಅವಲೋಕನ ದತ್ತಾಂಶ-ಚಾಲಿತ ಪರೀಕ್ಷೆಯು ಒಂದು ಚೌಕಟ್ಟಿನಲ್ಲಿ ಅವುಗಳ ಸಂಬಂಧಿತ ದತ್ತಾಂಶ ಸೆಟ್ಗಳೊಂದಿಗೆ ಒಟ್ಟಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಪರೀಕ್ಷಾ ಸ್ಕ್ರಿಪ್ಟ್ಗಳ ರಚನೆಯಾಗಿದೆ. ಈ ಚೌಕಟ್ಟು ನಿರ್ವಹಣೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಮತ್ತು ಪರೀಕ್ಷಾ ವ್ಯಾಪ್ತಿಯನ್ನು ಸುಧಾರಿಸಲು ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಪರೀಕ್ಷಾ ತರ್ಕವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇನ್ಪುಟ್ ಮತ್ತು ಫಲಿತಾಂಶ (ಪರೀಕ್ಷಾ ಮಾನದಂಡಗಳು) ದತ್ತಾಂಶ ಮೌಲ್ಯಗಳನ್ನು ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನ ಕೇಂದ್ರ ದತ್ತಾಂಶ ಮೂಲಗಳು ಅಥವಾ ದತ್ತಸಂಚಯಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಬಹುದು, ನಿಜವಾದ ಸ್ವರೂಪ, ಸಂಸ್ಥೆ ಮತ್ತು ಉಪಕರಣಗಳು ಅನುಷ್ಠಾನಕ್ಕೆ ನಿರ್ದಿಷ್ಟವಾಗಿರಬಹುದು. ದತ್ತಾಂಶವು ಇನ್ಪುಟ್ ಮೌಲ್ಯಗಳು ಮತ್ತು ಔಟ್ಪುಟ್ ಪರಿಶೀಲನಾ ಮೌಲ್ಯಗಳೆರಡಕ್ಕೂ ಬಳಸುವ ಅಸ್ಥಿರಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. ಮುಂದುವರಿದ (ಪ್ರೌಢ) ಯಾಂತ್ರೀಕೃತಗೊಂಡ ಪರಿಸರದಲ್ಲಿ ದತ್ತಾಂಶವನ್ನು ಚಾಲನೆಯಲ್ಲಿರುವ ವ್ಯವಸ್ಥೆಯಿಂದ ಉದ್ದೇಶ-ನಿರ್ಮಿತ ಕಸ್ಟಮ್ ಟೂಲ್ ಅಥವಾ ಸ್ನಿಫರ್ ಬಳಸಿ ಸಂಗ್ರಹಿಸಬಹುದು, ಡಿಡಿಟಿ ಫ್ರೇಮ್ವರ್ಕ್ ಹೀಗೆ ಶಕ್ತಿಯುತವಾದ ಸ್ವಯಂಚಾಲಿತ ಹಿಂಜರಿತ ಪರೀಕ್ಷಾ ಸಾಧನವನ್ನು ಉತ್ಪಾದಿಸುವ ಸಂಗ್ರಹಿಸಿದ ದತ್ತಾಂಶದ ಪ್ಲೇಬ್ಯಾಕ್ ಅನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ. ಸ್ವಯಂಚಾಲಿತ ಪರೀಕ್ಷಾ ಸೂಟ್ಗಳು ಪುನರಾವರ್ತಿಸಬಹುದಾದ ಪರೀಕ್ಷೆಗಾಗಿ ಸಿಸ್ಟಮ್ನ ಜಿ. ಯು. ಐ ಮೂಲಕ ಬಳಕೆದಾರರ ಸಂವಹನಗಳನ್ನು ಹೊಂದಿರುತ್ತವೆ. ಪ್ರತಿ ಪರೀಕ್ಷೆಯು "ಮೊದಲು" ಚಿತ್ರ ಉಲ್ಲೇಖ ದತ್ತಸಂಚಯದ ಪ್ರತಿಯೊಂದಿಗೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. "ಬಳಕೆದಾರರ ಸಂವಹನಗಳನ್ನು" "ಹೊಸ" GUI ಆವೃತ್ತಿಯ ಮೂಲಕ ಮರುಪ್ರಸಾರ ಮಾಡಲಾಗುತ್ತದೆ ಮತ್ತು "ಪೋಸ್ಟ್ ಟೆಸ್ಟ್" ದತ್ತಸಂಚಯಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ. ಒಂದು ಸಾಧನವನ್ನು ಬಳಸಿಕೊಂಡು "ಪೋಸ್ಟ್ ಟೆಸ್ಟ್" ದತ್ತಸಂಚಯವನ್ನು "ಪೋಸ್ಟ್ ಟೆಸ್ಟ್" ದತ್ತಸಂಚಯಕ್ಕೆ ಹೋಲಿಸಲಾಗುತ್ತದೆ. ವ್ಯತ್ಯಾಸಗಳು ಸಂಭಾವ್ಯ ಹಿಂಜರಿತವನ್ನು ಬಹಿರಂಗಪಡಿಸುತ್ತವೆ. ಪ್ರೋಗ್ರಾಂ ಮೂಲಕ ನ್ಯಾವಿಗೇಷನ್, ದತ್ತಾಂಶ ಮೂಲಗಳ ಓದುವಿಕೆ, ಮತ್ತು ಪರೀಕ್ಷಾ ಸ್ಥಿತಿ ಮತ್ತು ಮಾಹಿತಿಯ ಲಾಗಿಂಗ್ ಇವೆಲ್ಲವನ್ನೂ ಪರೀಕ್ಷಾ ಲಿಪಿಯಲ್ಲಿ ಕೋಡ್ ಮಾಡಲಾಗುತ್ತದೆ. ಬದಲಾಗುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿರುವ ಯಾವುದನ್ನಾದರೂ ದತ್ತಾಂಶವು ಪ್ರೇರೇಪಿಸುತ್ತದೆ (ಇದನ್ನು "ವ್ಯತ್ಯಾಸ" ಎಂದೂ ಕರೆಯಲಾಗುತ್ತದೆ ಮತ್ತು ಪರಿಸರ, ಅಂತಿಮ ಬಿಂದುಗಳು, ಪರೀಕ್ಷಾ ದತ್ತಾಂಶ, ಸ್ಥಳಗಳು ಮುಂತಾದ ಅಂಶಗಳನ್ನು ಒಳಗೊಂಡಿದೆ). ಇದನ್ನು ಪರೀಕ್ಷಾ ತರ್ಕದಿಂದ (ಸ್ಕ್ರಿಪ್ಟ್ಗಳು) ಬೇರ್ಪಡಿಸಲಾಗುತ್ತದೆ ಮತ್ತು 'ಬಾಹ್ಯ ಆಸ್ತಿ' ಗೆ ಸ್ಥಳಾಂತರಿಸಲಾಗುತ್ತದೆ. ಇದು ಕಾನ್ಫಿಗರೇಶನ್ ಅಥವಾ ಟೆಸ್ಟ್ ಡೇಟಾಸೆಟ್ ಆಗಿರಬಹುದು. ಲಿಪಿಯಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಲಾದ ತರ್ಕವು ದತ್ತಾಂಶ ಮೌಲ್ಯಗಳಿಂದ ನಿರ್ದೇಶಿಸಲ್ಪಡುತ್ತದೆ. ಕೀವರ್ಡ್-ಚಾಲಿತ ಪರೀಕ್ಷೆಯು ಹೋಲುತ್ತದೆ, ಆದರೆ ಪರೀಕ್ಷಾ ಪ್ರಕರಣದ ತರ್ಕವನ್ನು "ಆಕ್ಷನ್ ವರ್ಡ್ಸ್" ನ ರೂಪದಲ್ಲಿ ಡೇಟಾ ಮೌಲ್ಯಗಳಾಗಿ ಎನ್ಕೋಡ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಪರೀಕ್ಷಾ ಲಿಪಿಯಲ್ಲಿ ಹುದುಗಿರುವ ಅಥವಾ "ಹಾರ್ಡ್-ಕೋಡೆಡ್" ಅಲ್ಲ. ಸ್ಕ್ರಿಪ್ಟ್ ಕೇವಲ ದತ್ತಾಂಶ ಮೂಲದಲ್ಲಿ ಇರಿಸಲಾಗಿರುವ ದತ್ತಾಂಶಕ್ಕಾಗಿ "ಚಾಲಕ" (ಅಥವಾ ವಿತರಣಾ ಕಾರ್ಯವಿಧಾನ) ಆಗಿದೆ. ದತ್ತಾಂಶ-ಚಾಲಿತ ಪರೀಕ್ಷೆಗೆ ಬಳಸುವ ದತ್ತಸಂಚಯಗಳು ಈ ಕೆಳಗಿನವುಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದುಃ ದತ್ತಾಂಶ ಸಂಗ್ರಹಗಳು ಡಿ. ಎ. ಓ ಆಬ್ಜೆಕ್ಟ್ಗಳು ಎ. ಡಿ. ಓ ಆಬ್ಜೆಕ್ಟ್ಗಳು ನಿಯಂತ್ರಣ ಕೋಷ್ಟಕ ಕೀವರ್ಡ್-ಚಾಲಿತ ಪರೀಕ್ಷೆ ಟೆಸ್ಟ್ ಆಟೊಮೇಷನ್ ಫ್ರೇಮ್ವರ್ಕ್ ಟೆಸ್ಟ್-ಚಾಲಿತ ಅಭಿವೃದ್ಧಿ ಮೆಟಾಡೇಟಾ-ಚಾಲಿತ ಪರೀಕ್ಷೆ ಮಾಡ್ಯುಲಾರಿಟಿ-ಚಾಲಿತ ಪರೀಕ್ಷೆ ಮಾದರಿ-ಆಧಾರಿತ ಪರೀಕ್ಷೆ ಉಲ್ಲೇಖಗಳು ಕಾರ್ಲ್ ನಾಗ್ಲೆಃ ಟೆಸ್ಟ್ ಆಟೊಮೇಷನ್ ಫ್ರೇಮ್ವರ್ಕ್ಗಳು, ಸೋರ್ಸ್ಫೋರ್ಜ್ನಲ್ಲಿ ಸಾಫ್ಟ್ವೇರ್ ಆಟೊಮೇಷನ್ ಫ್ರೇಮ್ವರ್ಕ್ ಬೆಂಬಲ, ಡೇಟಾ-ಚಾಲಿತ ಪರೀಕ್ಷಾ ವಿಧಾನ ಸಾಫ್ಟ್ವೇರ್ ಪರೀಕ್ಷೆ