அலைபேசி, கணினி, தொலைக்காட்சி, குளிரூட்டி என ஏராளமான மின்னணுக் கருவிகள் விற்கும் நிறுவனம் ஒன்றில் வாடிக்கையாளர்களுக்கு இரசீது கொடுக்கும் மென்பொருள் ஒன்றை நம்முடைய உருவாக்குநர்கள் உருவாக்கிக் கொடுப்பதாக வைத்துக்கொள்ளுங்கள். அவர்கள் உருவாக்கும் நேரத்தில் சோதனையாளர்கள் டெஸ்ட் கேஸ்கள் எழுதத் தொடங்கியிருப்பார்கள். இங்கு நம்முடைய மென்பொருள் இரசீது கொடுக்கும் மென்பொருள் என்பதால், பல்வேறு வகைகளில் இரசீதுகளைச் சோதிக்க டெஸ்ட் கேஸ்கள் உருவாக்கப்பட வேண்டும்.
அதாவது,
-
10000 ரூபாய்க்கு மேல் பொருள் வாங்கினால் தள்ளுபடி
-
கடன் அட்டை (கிரெடிட் கார்டு) கொண்டு வாங்கினால் சிறப்புத் தள்ளுபடி
-
குறிப்பிட்ட நாட்களில் வாங்கினால் சிறிய தள்ளுபடி
-
இரண்டு அல்லது அதற்கு மேல் பொருட்கள் வாங்கினால் இலவசப் பொருள்
-
குறிப்பிட்ட நிறுவனங்களின் பொருட்களை வாங்கினால் குறைந்த விலை
என்று பல்வேறு தள்ளுபடிகளையும், இலவசங்களையும் இரசீதில் சோதிக்கும் வகையில் டெஸ்ட் கேஸ்கள் எழுதப்பட வேண்டும். இப்படிப்பட்ட டெஸ்ட் கேஸ்கள் எழுதுவதில் மிகுந்த அக்கறை வேண்டும். ஏனென்றால், சோதனையாளர் கவனிக்காமல் விடும் ஒவ்வொரு டெஸ்ட் கேசும் இரசீதில் தவறுகளைக் கொண்டு வந்து விடும்; அது நிறுவனத்தின் வணிகத்தை நேரடியாகப் பாதித்து விடும் அல்லவா? எனவே இது போன்ற இடத்தில் டெஸ்ட் கேஸ்களைக் கூடுதல் கவனத்துடன் எழுத வேண்டும். ஏனென்றால், மேலே பார்த்த தள்ளுபடிகள் பல சமயங்களில் கலவையாகக் கொடுக்கப்படும். அதாவது,
-
10000 ரூபாய்க்கு மேலும் வாங்கிக் குறிப்பிட்ட வங்கிக் கடன் அட்டையைப் பயன்படுத்தினால் சிறப்புச் சலுகை
-
குறிப்பிட்ட நாட்களில் குறிப்பிட்ட சில நிறுவனங்களின் பொருட்களை வாங்கினால் மேல் அதிகத் தள்ளுபடி விலை
என்பன போன்று! இவற்றை எல்லாம் சேர்த்து டெஸ்ட் கேஸ்களை எழுத வேண்டும். எழுதப் படும் டெஸ்ட் கேஸ்களில் மேலே பார்த்தது போல் இருக்கும் கலவைகள் எவையும் தவறிவிடக் கூடாது.
நம்முடைய கையில் இப்போது இரண்டு பெரிய வேலைகள் இருக்கின்றன.
1) நிறைய கலவைகளைச் சோதிப்பதற்கு டெஸ்ட் கேஸ்கள் எழுத வேண்டும்.
2) அக்கலவைகளுக்குரிய தள்ளுபடி சரியான வகையில் ‘எதிர்பார்க்கும் வெளியீடாக‘ அமைய வேண்டும்.
இவை போன்ற நேரங்களில் தான் உள்ளீடுகளையும் அவற்றிற்குரிய முடிவுகளையும் ஓர் அட்டவணை போல் உருவாக்கி, அந்த அட்டவணையின் அடிப்படையில் டெஸ்ட் கேஸ்களை எழுதுவது நேரத்தையும் மிச்சமாக்கும்; எல்லாவகை உள்ளீட்டையும் ஒன்று விடாமல் டெஸ்ட் கேசாக மாற்றிவிட உதவும்.
விதிகள் |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
10000 ரூ. க்கு மேல் |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
இல்லை |
இல்லை |
|
கடன் அட்டை |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
இல்லை |
ஆம் |
ஆம் |
|
குறிப்பிட்ட பொருள் |
ஆம் |
ஆம் |
ஆம் |
இல்லை |
ஆம் |
ஆம் |
இல்லை |
|
குறிப்பிட்ட வங்கி |
ஆம் |
ஆம் |
இல்லை |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
|
2 பொருளுக்கு மேல் |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
|
குறிப்பிட்ட நாள் |
ஆம் |
இல்லை |
ஆம் |
ஆம் |
ஆம் |
ஆம் |
இல்லை |
|
எதிர்பார்க்கும் முடிவுகள் | ||||||||
5 % தள்ளுபடி |
உண்டு |
உண்டு |
||||||
கடிகாரம் இலவசம் |
உண்டு |
உண்டு |
உண்டு |
|||||
10% தள்ளுபடி |
உண்டு |
உண்டு |
உண்டு |
|||||
20% தள்ளுபடி |
உண்டு |
உண்டு |
மேல் இருப்பது போல, வாடிக்கையாளர் தேவை ஆவணத்தை அடிப்படையாகக் கொண்டு – விதிகளையும் எதிர்பார்க்கும் முடிவுகளையும் அட்டவணைப்படுத்த வேண்டும். இப்படி அட்டவணைப்படுத்துவதென்பது, முன்னரே சொன்னது போல, எல்லாவகை உள்ளீடுகளையும் சோதிக்க மிகுந்த உதவியாக இருக்கும். இந்த முறைக்கு முடிவுகளை அட்டவணைப்படுத்தும் முறை (‘Decision Table’) என்று பெயர்.
நிலை மாற்ற முறை சோதனை
சில சமயங்களில் பயனர் கொடுக்கும் உள்ளீடுகள் ஒன்றாக இருக்கும். ஆனால் கிடைக்கும் விடைகள் ஒவ்வொரு முறை ஒவ்வொன்றாக இருக்கும். ஏடிஎம் மையத்திற்குச் சென்று உங்களுடைய கடவுச்சொல்லை உள்ளிடுவதை எடுத்துக்கொள்ளுங்கள். முதல் இரண்டு முறை தவறான கடவுச்சொல்லை உள்ளிடும் போது ஏடிஎம் கருவி, ‘தவறான கடவுச்சொல்‘ என்று பதில் சொல்லும். மூன்றாவது முறையும் தவறான கடவுச்சொல்லை உள்ளிட்டால், ‘கடவுச்சொல் தவறு – 24 மணி நேரம் காத்திருக்கவும் அல்லது அருகில் உள்ள வங்கிக்கிளையை அணுகவும்‘ என்று செய்தி தரும்.
இந்த எடுத்துக்காட்டில், மூன்று முறையும் பயனர் ஒரே வேலையைத் (தவறான கடவுச்சொல் கொடுத்ததைத்) தான் செய்தார். ஆனால் முதல் இரண்டு முறை கிடைத்த பதில், மூன்றாவது முறை அமையவில்லை. , பயனர் பயன்படுத்தியது போலவே ஒரு சோதனையாளராக நாமும் மூன்று முறை இது போன்ற நிகழ்வில் சோதிக்க வேண்டும்.
இங்கு, தொடக்க நிலையில் ஏடிஎம் கருவி தன்னியல்பில் இருக்கிறது. முதல் இரண்டு உள்ளீடுகளால் அதன் நிலையில் மாற்றம் ஏதுமில்லை. ஆனால் மூன்றாவது உள்ளீட்டால் ஏடிஎம் கருவி தன் நிலையை மாற்றி, இனி அட்டையை உள்ளிட்டாலும் செயல்பட மறுக்கிறது அல்லவா? இதைத் தான் நிலை மாற்ற முறை சோதனை (State Transition) என்று சொல்வார்கள். இதையும் டெஸ்ட் கேஸ்கள் எழுதும் போது கருத்தில் கொள்ள வேண்டும்.
இதுவரை நாம் கண்ட உத்திகள் அனைத்தும் கருப்புப் பெட்டி ச் சோதனை முறையில் டெஸ்ட் கேஸ்களை எழுதப் பயன்படும் உத்திகள் ஆகும். அதென்ன கருப்புப் பெட்டிச் சோதனை? விமானத்தில் தான் அந்தக் கருப்புப் பெட்டி என்று கேட்டிருக்கிறோம். இதென்ன மென்பொருளில் கருப்புப்பெட்டிச் சோதனை என்கிறீர்களா? கருப்புப் பெட்டி மட்டுமில்லை, வெள்ளைப் பெட்டிச் சோதனையும் இருக்கிறது. வரும் பதிவுகளில் அவற்றைப் பற்றிக் கலந்துரையாடுவோம்.
– முத்து (muthu@payilagam.com )
தொடரின் பிற பகுதிகள் இங்கே www.kaniyam.com/category/software-testing/