Test oracle
કમ્પ્યુટિંગ, સોફ્ટવેર એન્જિનિયરિંગ અને સોફ્ટવેર પરીક્ષણમાં, પરીક્ષણ ઓરેકલ (અથવા માત્ર ઓરેકલ) એ નક્કી કરવા માટેની એક પદ્ધતિ છે કે પરીક્ષણ પાસ થયું છે કે નિષ્ફળ થયું છે. ઓરેકલના ઉપયોગમાં પરીક્ષણ હેઠળના સિસ્ટમના આઉટપુટ (ઓ) ની સરખામણી, આપેલ ટેસ્ટ-કેસ ઇનપુટ માટે, આઉટપુટ (ઓ) સાથે કરવામાં આવે છે જે ઓરેકલ નક્કી કરે છે કે ઉત્પાદન હોવું જોઈએ. "ટેસ્ટ ઓરેકલ" શબ્દ સૌપ્રથમ વિલિયમ ઇ. હોડેન દ્વારા એક પેપરમાં રજૂ કરવામાં આવ્યો હતો. ઇલેન વેયુકર દ્વારા વિવિધ પ્રકારના ઓરેકલ પર વધારાના કાર્યની શોધ કરવામાં આવી હતી. ઓરેકલ ઘણીવાર પરીક્ષણ હેઠળની સિસ્ટમથી અલગ કામ કરે છે. જો કે, પદ્ધતિ પછીની શરતો પરીક્ષણ હેઠળની પ્રણાલીનો એક ભાગ છે, કારણ કે કરાર મોડેલો દ્વારા ડિઝાઇનમાં સ્વચાલિત ઓરેકલ છે. આપેલ ઇનપુટ (અને પ્રોગ્રામ અથવા સિસ્ટમ સ્ટેટ્સનો સમૂહ) માટે યોગ્ય આઉટપુટ નક્કી કરવું ઓરેકલ પ્રોબ્લેમ અથવા ટેસ્ટ ઓરેકલ પ્રોબ્લેમ તરીકે ઓળખાય છે, જે લાગે છે તેના કરતા ઘણી મુશ્કેલ સમસ્યા છે, અને તેમાં નિયંત્રણક્ષમતા અને અવલોકનક્ષમતા સંબંધિત સમસ્યાઓ સાથે કામ કરવાનો સમાવેશ થાય છે. શ્રેણીઓ 1978 થી 2012 સુધીના સંશોધન સાહિત્ય સર્વેક્ષણમાં પરીક્ષણ ઓરેકલની ઘણી સંભવિત શ્રેણીઓ મળી આવી હતી. નિર્દિષ્ટ આ ઓરેકલ સામાન્ય રીતે સોફ્ટવેર મોડેલિંગ અને સોફ્ટવેર કોડ નિર્માણના ઔપચારિક અભિગમો સાથે સંકળાયેલા છે. તેઓ ઔપચારિક સ્પષ્ટીકરણ, મોડેલ-આધારિત ડિઝાઇન સાથે જોડાયેલા છે જેનો ઉપયોગ પરીક્ષણ ઓરેકલ પેદા કરવા માટે થઈ શકે છે, રાજ્ય સંક્રમણ સ્પષ્ટીકરણ કે જેના માટે ઓરેકલને મોડેલ-આધારિત પરીક્ષણ અને પ્રોટોકોલ અનુરૂપતા પરીક્ષણમાં મદદ કરવા માટે મેળવી શકાય છે, અને કરાર દ્વારા ડિઝાઇન કે જેના માટે સમકક્ષ પરીક્ષણ ઓરેકલ એક દાવા છે. ચોક્કસ પરીક્ષણ ઓરેકલમાં સંખ્યાબંધ પડકારો છે. ઔપચારિક સ્પષ્ટીકરણ અમૂર્તતા પર આધાર રાખે છે, જે બદલામાં કુદરતી રીતે અચોક્કસતાનું તત્વ હોઈ શકે છે કારણ કે તમામ મોડેલો તમામ વર્તણૂકને પકડી શકતા નથી. વ્યુત્પન્ન એક વ્યુત્પન્ન પરીક્ષણ ઓરેકલ સિસ્ટમની કલાકૃતિઓમાંથી મેળવેલી માહિતીનો ઉપયોગ કરીને સાચા અને ખોટા વર્તનને અલગ પાડે છે. આમાં દસ્તાવેજીકરણ, સિસ્ટમ અમલીકરણ પરિણામો અને પરીક્ષણ હેઠળના સિસ્ટમના સંસ્કરણોની લાક્ષણિકતાઓ શામેલ હોઈ શકે છે. રીગ્રેસન ટેસ્ટ સ્યુટ્સ (અથવા અહેવાલો) એ તારવેલા પરીક્ષણ ઓરેકલનું ઉદાહરણ છે-તે એવી ધારણા પર બાંધવામાં આવે છે કે અગાઉના સિસ્ટમ સંસ્કરણના પરિણામનો ઉપયોગ ભાવિ સિસ્ટમ સંસ્કરણ માટે સહાય (ઓરેકલ) તરીકે થઈ શકે છે. અગાઉ માપવામાં આવેલી કામગીરીની લાક્ષણિકતાઓનો ઉપયોગ ભવિષ્યની સિસ્ટમ આવૃત્તિઓ માટે ઓરેકલ તરીકે થઈ શકે છે, ઉદાહરણ તરીકે, અવલોકન કરાયેલ સંભવિત કામગીરીના ઘટાડા વિશે પ્રશ્ન પેદા કરવા માટે. અગાઉની સિસ્ટમ આવૃત્તિઓમાંથી લખાણ દસ્તાવેજીકરણનો ઉપયોગ ભવિષ્યની સિસ્ટમ આવૃત્તિઓમાં અપેક્ષાઓને માર્ગદર્શન આપવા માટે આધાર તરીકે થઈ શકે છે. સ્યુડો-ઓરેકલ વ્યુત્પન્ન પરીક્ષણ ઓરેકલની શ્રેણીમાં આવે છે. વેયુકર દ્વારા વ્યાખ્યાયિત સ્યુડો-ઓરેકલ એ એક અલગ લેખિત પ્રોગ્રામ છે જે પરીક્ષણ હેઠળના પ્રોગ્રામ અથવા સિસ્ટમ જેવું જ ઇનપુટ લઈ શકે છે જેથી તપાસ કરવા માટે કોઈ સમસ્યા હોઈ શકે છે કે કેમ તે સમજવા માટે તેમના આઉટપુટની સરખામણી કરી શકાય. આંશિક ઓરેકલ એ ચોક્કસ પરીક્ષણ ઓરેકલ અને વ્યુત્પન્ન પરીક્ષણ ઓરેકલ વચ્ચેનું સંકર છે. તે પરીક્ષણ હેઠળ સિસ્ટમના મહત્વપૂર્ણ (પરંતુ સંપૂર્ણ નહીં) ગુણધર્મોને સ્પષ્ટ કરે છે. ઉદાહરણ તરીકે, મેટામોર્ફિક પરીક્ષણ સિસ્ટમના બહુવિધ અમલમાં આવા ગુણધર્મોનો ઉપયોગ કરે છે, જેને મેટામોર્ફિક સંબંધો કહેવાય છે. ગર્ભિત પરીક્ષણ ઓરેકલ ગર્ભિત માહિતી અને ધારણાઓ પર આધાર રાખે છે. ઉદાહરણ તરીકે, પ્રોગ્રામ ક્રેશમાંથી કેટલાક ગર્ભિત નિષ્કર્ષ હોઈ શકે છે, એટલે કે. અનિચ્છનીય વર્તન-સમસ્યા હોઈ શકે છે તે નક્કી કરવા માટે એક ઓરેકલ. અનિચ્છનીય વર્તન માટે શોધ અને પરીક્ષણ કરવાની ઘણી રીતો છે, પછી ભલે કેટલાક તેને નકારાત્મક પરીક્ષણ કહે, જ્યાં ફઝિંગ જેવા વિશિષ્ટ ઉપગણ હોય. ગર્ભિત પરીક્ષણ ઓરેકલમાં મર્યાદાઓ છે-કારણ કે તેઓ ગર્ભિત તારણો અને ધારણાઓ પર આધાર રાખે છે. ઉદાહરણ તરીકે, જો સિસ્ટમ ખામી-સહિષ્ણુ સિસ્ટમ હોય અને તેથી સ્વ-ઉપચાર/સ્વ-વ્યવસ્થાપનના સ્વરૂપ હેઠળ કાર્યરત હોય તો પ્રોગ્રામ અથવા પ્રોસેસ ક્રેશ એ પ્રાથમિકતાનો મુદ્દો ન પણ હોઈ શકે. પર્યાવરણીય નિર્ભરતાને કારણે ગર્ભિત પરીક્ષણ ઓરેકલ ખોટા હકારાત્મક માટે સંવેદનશીલ હોઈ શકે છે. સંપત્તિ આધારિત પરીક્ષણ ગર્ભિત ઓરેકલ પર આધારિત છે. માનવ જ્યારે નિર્દિષ્ટ, વ્યુત્પન્ન અથવા ગર્ભિત પરીક્ષણ ઓરેકલનો ઉપયોગ કરી શકાતો નથી, ત્યારે પરીક્ષણ ઓરેકલ નક્કી કરવા માટે માનવ ઇનપુટ જરૂરી છે. આને માત્રાત્મક અને ગુણાત્મક અભિગમો તરીકે વિચારી શકાય છે. માત્રાત્મક અભિગમનો ઉદ્દેશ હિતધારક માટે યોગ્ય હેતુ અથવા સોફ્ટવેરના પ્રકાશન અંગેના નિર્ણયો લેવા માટે સક્ષમ થવા માટે પરીક્ષણ હેઠળની સિસ્ટમ (દા. ત., પરીક્ષણ પરિણામો) પર એકત્રિત કરવા માટે યોગ્ય માહિતી શોધવાનો છે. ગુણાત્મક અભિગમનો ઉદ્દેશ ઇનપુટ પરીક્ષણ ડેટાની પ્રતિનિધિત્વક્ષમતા અને યોગ્યતા અને પરીક્ષણ હેઠળની સિસ્ટમમાંથી આઉટપુટનો સંદર્ભ શોધવાનો છે. એક ઉદાહરણ વાસ્તવિક અને પ્રતિનિધિ પરીક્ષણ માહિતીનો ઉપયોગ કરવો અને પરિણામોનો અર્થ સમજવો (જો તે વાસ્તવિક હોય તો) છે. આને સંશોધનાત્મક અભિગમો દ્વારા માર્ગદર્શન આપી શકાય છે, જેમ કે આંતરડાની વૃત્તિ, અંગૂઠાના નિયમો, ચેકલિસ્ટ સહાયકો અને પરીક્ષણ હેઠળ પ્રોગ્રામ/સિસ્ટમ માટે પસંદ કરેલા ચોક્કસ સંયોજનને અનુરૂપ બનાવવામાં મદદ કરવા માટે અનુભવ. ઉદાહરણો પરીક્ષણ ઓરેકલ સામાન્ય રીતે સ્પષ્ટીકરણો અને દસ્તાવેજીકરણ પર આધારિત હોય છે. મોડેલ-આધારિત ડિઝાઇન અને મોડેલ-આધારિત પરીક્ષણ માટે ઇનપુટ તરીકે ઉપયોગમાં લેવાતું ઔપચારિક સ્પષ્ટીકરણ ચોક્કસ પરીક્ષણ ઓરેકલનું ઉદાહરણ હશે. મોડેલ-આધારિત ઓરેકલ સિસ્ટમ વર્તણૂક પેદા કરવા અને ચકાસવા માટે સમાન મોડેલનો ઉપયોગ કરે છે. દસ્તાવેજીકરણ કે જે ઉત્પાદનનું સંપૂર્ણ સ્પષ્ટીકરણ નથી, જેમ કે વપરાશ અથવા સ્થાપન માર્ગદર્શિકા, અથવા પ્રદર્શન લાક્ષણિકતાઓનો રેકોર્ડ અથવા સોફ્ટવેર માટે ઓછામાં ઓછી મશીન આવશ્યકતાઓ, તે સામાન્ય રીતે વ્યુત્પન્ન પરીક્ષણ ઓરેકલ હશે. સુસંગતતા ઓરેકલ સમાનતા માટે એક પરીક્ષણના અમલના પરિણામોની સરખામણી બીજા સાથે કરે છે. આ વ્યુત્પન્ન પરીક્ષણ ઓરેકલનું બીજું ઉદાહરણ છે. સોફ્ટવેર પ્રોગ્રામ માટે ઓરેકલ એ બીજો પ્રોગ્રામ હોઈ શકે છે જે પરીક્ષણ હેઠળના ઉત્પાદનની સમાન ગાણિતિક અભિવ્યક્તિનું મૂલ્યાંકન કરવા માટે અલગ અલ્ગોરિધમનો ઉપયોગ કરે છે. આ એક સ્યુડો-ઓરેકલનું ઉદાહરણ છે, જે એક વ્યુત્પન્ન પરીક્ષણ ઓરેકલ છે. ગૂગલ સર્ચ દરમિયાન, પરત કરવામાં આવેલા પરિણામોની સંખ્યા સાચી છે કે નહીં તે ચકાસવા માટે આપણી પાસે સંપૂર્ણ ઓરેકલ નથી. આપણે મેટામોર્ફિક સંબંધને એવી રીતે વ્યાખ્યાયિત કરી શકીએ છીએ કે ફોલો-અપ સંકુચિત શોધ ઓછા પરિણામો આપશે. આ આંશિક ઓરેકલનું ઉદાહરણ છે, જે ચોક્કસ પરીક્ષણ ઓરેકલ અને વ્યુત્પન્ન પરીક્ષણ ઓરેકલ વચ્ચેનું સંકર છે. આંકડાકીય ઓરેકલ સંભવિત લાક્ષણિકતાઓનો ઉપયોગ કરે છે, ઉદાહરણ તરીકે છબી વિશ્લેષણ સાથે જ્યાં મેચ અથવા અન્યથા ઉચ્ચાર કરવા માટે પરીક્ષણ ઓરેકલ માટે નિશ્ચિતતા અને અનિશ્ચિતતાની શ્રેણી વ્યાખ્યાયિત કરવામાં આવે છે. આ માનવ પરીક્ષણ ઓરેકલમાં માત્રાત્મક અભિગમનું ઉદાહરણ હશે. હ્યુરિસ્ટિક ઓરેકલ પરીક્ષણ ઇનપુટ્સના વર્ગ પર પ્રતિનિધિ અથવા અંદાજિત પરિણામો પ્રદાન કરે છે. આ માનવ પરીક્ષણ ઓરેકલમાં ગુણાત્મક અભિગમનું ઉદાહરણ હશે. સંદર્ભ ગ્રંથસૂચિ બાઈન્ડર, રોબર્ટ વી. (1999). "પ્રકરણ 18-ઓરેકલ" ઇન ટેસ્ટિંગ ઓબ્જેક્ટ-ઓરિએન્ટેડ સિસ્ટમ્સઃ મોડલ્સ, પેટર્ન અને ટૂલ્સ, એડિસન-વેસ્લી પ્રોફેશનલ, 7 નવેમ્બર 1999, સોફ્ટવેર ટેસ્ટિંગ કમ્પ્યુટેશન ઓરેકલ