வெள்ளைப் பெட்டி என்று சாப்ட்வேர் டெஸ்டிங்கில் எதைச் சொல்கிறார்கள்? கருப்புப் பெட்டி என்றால் என்று பார்த்தோம் அல்லவா? அதற்கு நேர் எதிரானது தான் வெள்ளைப் பெட்டி! வெளிப்படையான (transparent) பெட்டியைத் தான் வெள்ளைப் பெட்டி என்று சொல்கிறார்கள். வெளிப்படை என்றால் என்ன? கணினியில் இரண்டு எண்களைக் கூட்டுவதற்கு நிரல்(program) எழுதுகிறீர்கள் என்று வைத்துக் கொள்ளுங்கள். நிரலின் முடிவில் இரண்டு எண்களைக் கொடுக்கிறீர்கள். வரும் வெளியீடு(output) சரியா என்று பார்க்கிறீர்கள். இது தான் கருப்புப் பெட்டி முறை! அதாவது உள்ளீட்டுக்குத் தகுந்த வெளியீடு கிடைக்கிறதா என்று மட்டும் பார்ப்பது! வெள்ளைப் பெட்டி முறையில் உள்ளீடு, வெளியீடு ஆகியவற்றோடு நீங்கள் எழுதியிருக்கும் நிரலையும் சேர்த்துச் சரிபார்ப்பது வெள்ளைப் பெட்டி முறை!
அதாவது,
* உள்ளீடு
* வெளியீடு ஆகியன மட்டுமல்லாது
* நிரல் எப்படி எழுதியிருக்கிறார்கள்
* கட்டுப்பாட்டு வாக்கியங்களை எப்படி அமைத்திருக்கிறார்கள்
* திருப்பு வாக்கியங்களை எப்படி அமைத்திருக்கிறார்கள்
என்பனவற்றையும் சேர்த்துச் சோதிப்பது தான் வெள்ளைப் பெட்டி முறையாகும்.
ஆகா! திடீரென கட்டுப்பாட்டு வாக்கியங்கள், திருப்பு வாக்கியங்கள் என்றெல்லாம் பேசுகிறீர்களே! என்னவென்றே புரியவில்லையே! என்கிறீர்களா? கவலையை விடுங்கள்! தெலுங்கில் ஒரு பழமொழி உண்டு – ‘பேரு பெத்த பேரு – தாக நீரு லேது!’ என்று! அதாவது – பெரிய ஆளாக இருப்பார் – ஆனால் குடிக்கத் தண்ணீர் கூடத் தரமாட்டார்! தொழில்நுட்ப வார்த்தைகளும் அப்படிப்பட்டவை தான்! பார்க்கப் பெரிதாக பயமுறுத்துவது போலத் தெரியும்! உள்ளே நுழைந்து கொஞ்சம் ஆராய்ந்தால் – ‘அட! இது தானா!’ என்று நினைப்போம். எனவே, கட்டுப்பாட்டு வாக்கியங்கள், திருப்பு வாக்கியங்கள் ஆகியனவற்றைப் பற்றி விரிவாகப் பின்னர் பார்ப்போம். இப்போதைக்கு அவை எல்லாம் எளிமையானவை தான் என்று மட்டும் மனத்தில் ஏற்றிக் கொள்ளுங்கள்.
நிரல் பற்றித் தெரிய வேண்டுமா?
ஆனால் ஒன்று! வெள்ளைப் பெட்டி முறை என்பதே உள்ளீடு, வெளியீடு ஆகியவற்றுடன் நிரலையும் ஆராய்வது என்பதால், இந்த முறையில் சோதிப்பதற்கு, சோதனையாளருக்கு (டெஸ்டருக்கு) நிரல் பற்றிய அறிவு கட்டாயம் தேவை!
நிரலை எடுத்துச் சோதிப்பதன் மூலம் மென்பொருள் சரியாக இயங்குகிறதா என்று பார்ப்பதுடன் மெமரி லீக் (நினைவக ஓட்டை) இருக்கிறதா என்று கூடப் பார்க்கலாம். இந்தச் சோதனையைச் செய்வதற்கு வழக்கம் போல் கட்டற்ற மென்பொருட்கள் ஸ்பிலின்ட், வால்கிரைண்டு என்பன போன்று நிறைய இருக்கின்றன.
எல்லாம் சரி! இந்தப் பதிவின் தலைப்பு என்னவோ வெள்ளைப் பெட்டி உத்திகள் என்று சொல்கிறது – ஆனால் நீங்கள் இன்னும் உத்திகளைப் பற்றிப் பேசவே இல்லையே! என்று தோன்றுகிறதா?
வெள்ளைப் பெட்டி உத்திகள்:
1) வரிவரிச் சோதனை முறை (Statement Coverage)
2) கிளைவரிச் சோதனை முறை (Branch Coverage)
3) வழிச் சோதனை முறை (Path Coverage)
ஆகிய உத்திகளைப் பயன்படுத்தி வெள்ளைப் பெட்டிச் சோதனையில் ஈடுபடலாம். இவை தவிர்த்து, மாற்றச் சோதனை முறையும் (Mutation Testing) உண்டு. அவற்றைப் பற்றித் தான் அடுத்த பதிவு! விரிவாகப் பேசுவோம்.
– முத்து (muthu@payilagam.com)