ලාභ:
- ව්යාජ විශ්වාසයේ මුහුණු තුන හඳුනා ගැනීමේ හැකියාව (ස්ථිර නොවන, ස්වයං ප්රකාශ කිරීම, සුළු ප්රකාශය) සහ ප්රතිවිරෝධතා යෙදීම
- මෙවලමක් හෝ අතින් ආවරණය වන සියයට වඩා ගුණාත්මක මිනුමක් ලෙස විකෘති පරීක්ෂාව සහ විකෘති ලකුණු භාවිතා කිරීමේ හැකියාව
- AI පරීක්ෂණයට එරෙහිව රතු කණ්ඩායමක් ලෙස ස්ථානගත කිරීමේ හැකියාව සහ ප්රශංසා උගුලට හසු නොවී පරීක්ෂණ සිදුරු සඳහා දඩයම් කිරීමේ හැකියාව
මෙම මොඩියුලයේ හදවතෙහි පුනරාවර්තන අනතුරු ඇඟවීමක් ඇත: හරිත දිලිසෙන පරීක්ෂණ පුවරුවක් ගුණාත්මකභාවය පිළිබඳ සාක්ෂි නොවේ. ඔබගේ පරීක්ෂණ ඔබට විශ්වාසයක් ලබා දෙන්නේ නම්, එම විශ්වාසය සැබෑ හෝ ව්යාජද යන්න ඔබ දැනගත යුතුය. කෘත්රිම බුද්ධියේ (AI), මෙම ප්රශ්නය වෙන කවරදාකටත් වඩා තීරණාත්මක වේ, මන්ද AI තරල, සුමට පෙනුමක් ඇති නමුත් හිස් පරීක්ෂණ නිපදවීමට දක්ෂ බැවිනි. ව්යාජ විශ්වාසය - පරීක්ෂණ හරිත බැවින් මෘදුකාංගය නිවැරදි යැයි විශ්වාස කිරීම, ඇත්ත වශයෙන්ම පරීක්ෂණ කිසිවක් සත්යාපනය නොකරන විට - QA කණ්ඩායමකට සිදුවිය හැකි භයානකම දෙයයි; මක්නිසාද යත් එය සඟවන්නේ දෝෂ නොමැති බව නොව, ඔබට දෝෂ දැකිය නොහැකි බවයි. මෙම ඒකකය සමස්ත මොඩියුලයේ වලංගුකරණ දර්ශනය එක් විනයකට ගෙන එයි: ඔබේ පරීක්ෂණ පරීක්ෂා කිරීම.
පරීක්ෂණවල ගුණාත්මකභාවය මැනීම සඳහා රන් ප්රමිතිය: විකෘති පරීක්ෂාව
පරීක්ෂණයක් සත්ය වශයෙන්ම ආරක්ෂා කරන්නේද නැද්ද යන්න තේරුම් ගැනීමට ඇති ප්රබලම ක්රමය වන්නේ විකෘති පරීක්ෂණයයි (විකෘති පරීක්ෂණය - මූලාශ්ර කේතයේ හිතාමතාම කුඩා විකෘති/විකෘති නිපදවන සහ පරීක්ෂණ මගින් මෙම විකෘති හඳුනා ගන්නේද යන්න මැන බලන තාක්ෂණයකි). තර්කනය සරලයි: ඔබ හිතාමතාම කේතය බිඳ දැමුවහොත් (+ බවට -, a > බවට >= බවට පත් කිරීම, සත්යයක් අසත්ය බවට පත් කිරීම), හොඳ පරීක්ෂණ කට්ටලයක් එම දූෂණය අල්ලා රතු පැහැයට හැරවිය යුතුය. එය එසේ නොවේ නම්, එම බාධාව බේරී ඇති විකෘතියකි - එබැවින් ඔබේ පරීක්ෂණ ඇත්ත වශයෙන්ම එම හැසිරීම ආරක්ෂා නොකරයි.
විකෘති ලකුණු = මිය ගිය විකෘතිය / සම්පූර්ණ විකෘතිය. 90% රේඛීය ආවරණයක් සහිත පැකේජයකට 40% ක විකෘති ලකුණු තිබිය හැක; මෙයින් ඇඟවෙන්නේ රේඛා ක්රියාත්මක වන නමුත් හැසිරීම සත්යාපනය කර නොමැති බවයි. විකෘති ලකුණු යනු ප්රතිශත ආවරණයට වඩා ගුණාත්මක බවේ අවංක මිනුමක් වේ.
ඉඟිය: ස්වයංක්රීය විකෘති මෙවලම් ඇත (Java සඳහා PIT/Pitest, JavaScript/TypeScript සඳහා Stryker, .NET සඳහා Stryker.NET, Python සඳහා mutmut). මේවා ස්වයංක්රීයව විකෘති සිය ගණනක් උත්පාදනය කර පරීක්ෂා කරයි. ඔබට මෙවලමක් නොමැති නම්, අත්පොත "කේත පරීක්ෂාව බිඳ දැමීම" ක්රමය පවා තීරණාත්මක කාර්යයන් සඳහා ඉතා අගනේය.
ව්යාජ විශ්වාසයේ මුහුණු තුන සහ එහි ප්රතිවිරෝධය
ව්යාජ විශ්වාස ආකෘතිය
රෝග ලක්ෂණය
විෂ නාශක
තහවුරු කිරීමකින් තොරව පරීක්ෂා කරන්න
කේතය ක්රියා කරයි, කිසිවක් වලංගු නොවේ
සෑම පරීක්ෂණයකදීම සත්ය ප්රකාශය; විකෘති සමග පරීක්ෂණය
ස්වයං-තහවුරු කිරීමේ පරීක්ෂණය
අපේක්ෂිත = කේතයේ ප්රතිදානය
අපේක්ෂිත අගය ස්වාධීනව ගණනය කරන්න
සුළු ප්රකාශයක්
"ශුන්ය නොවේ", "200 ආපසු ලබා දී ඇත"
ව්යාපාර රීතිය/සැබෑ ප්රතිඵලය වලංගු කරන්න
ඉහළ විෂය පථය වැරදියි
90% රේඛා, අඩු ආරක්ෂාව
විකෘති ලකුණු බලන්න
බිඳෙනසුලු පරීක්ෂණ ඉවසීම
"ආයෙත් හිරවෙලා, පාස්"
මූල හේතුව + නිර්ණායක පරීක්ෂාව
AI "රතු කණ්ඩායමක්" ලෙස භාවිතා කිරීම
AI හට ව්යාජ විශ්වාසය ජනනය කළ හැකි අතර එය දඩයම් කිරීමේ බලවත් සගයෙකු විය හැකිය. ඔබේම පරීක්ෂණවලට එරෙහිව රතු කණ්ඩායමක් ලෙස AI භාවිත කරන්න: “මෙම පරීක්ෂණ සමත් නමුත් වැරදි කේතයක් ලියන්න” හෝ “මෙම පරීක්ෂණ රැවටෙන උපක්රමයක් සොයන්න” යනුවෙන් අසන්න. AI ඔබේ පරීක්ෂණවල ලූප සොයා ගන්නේ නම්, එම අඩුපාඩු සැබෑ අවදානම් වේ.
අවවාදයයි: AI ගෙන් අසන්න එපා "මගේ පරීක්ෂණ තත්ත්වය හොඳද?" සහ "ඔව්, නියමයි" යන පිළිතුර සහතිකයක් ලෙස ගන්න. AI කරුණාවන්ත වීමට නැඹුරු වේ. ඒ වෙනුවට, සංයුක්ත කාර්යයක් සඳහා AI ට අභියෝග කරන්න: "මෙම පරීක්ෂණ සමත් වන දෝෂයක් නිෂ්පාදනය කරන්න." එය නිෂ්පාදනය කළ හැකි නම්, ඔබේ පරීක්ෂණ එම දෝෂයට අන්ධ වේ.
සමාන විකෘති සහ ලකුණු සීමාවන්
විකෘති පරීක්ෂාව ප්රබලයි, නමුත් එයට හසුවීමක් ඇත: සමහර විකෘති කේතයේ හැසිරීම කිසිසේත්ම වෙනස් නොකරයි. මේවා සමාන විකෘති ලෙස හැඳින්වේ (සමාන විකෘති - දූෂිත කේතය, මුල් පිටපතට සමාන ප්රතිඵලයක් ලබා දෙන විකෘති). උදාහරණයක් ලෙස, කිසි විටෙකත් භාවිතා නොකරන විචල්යයක ආරම්භක අගය වෙනස් කිරීම ප්රතිදානයට බලපාන්නේ නැත; කිසිම පරීක්ෂණයකින් මෙය අල්ලා ගත නොහැක සහ නොකළ යුතුය. එබැවින්, 100% විකෘති ලකුණු ප්රායෝගිකව බොහෝ විට සාක්ෂාත් කරගත නොහැකි අතර එය ඉලක්කය නොවේ. අතින් සමාන විකෘති වල් නෙලීම ශ්රම තීව්ර වේ; එබැවින් විකෘති ලකුණු නිරපේක්ෂ විභාග ලකුණු ලෙස කියවන්න එපා, නමුත් අවංක දර්ශකයක් ලෙස "මගේ පරීක්ෂණ ඇත්තෙන්ම ආරක්ෂා කරයිද?"
ප්රායෝගික ප්රවේශය මෙයයි: සම්පූර්ණ කේත පදනම හරහා විකෘති පරීක්ෂාව නිරන්තරයෙන් ක්රියාත්මක කරනවා වෙනුවට, ඉහළම අවදානම් සහ වඩාත් සංකීර්ණ ව්යාපාරික නීති අඩංගු මොඩියුල මත එය ක්රියාත්මක කරන්න. මෙම මොඩියුලවල ඉතිරිව ඇති විකෘති එකින් එක පරීක්ෂා කරන්න; එය සැබෑ පරතරයක් නම්, පරීක්ෂණයක් එක් කරන්න; එය සමාන විකෘතියක් නම්, එය සාධාරණීකරණයෙන් සලකුණු කර සමත් වන්න. ඉතිරි වී ඇති විකෘතියක් සමාන වේද යන්න තක්සේරු කිරීමේදී AI හට මූලික පරීක්ෂාව සිදු කළ හැක; නමුත් අවසාන තීරණය ගනු ලබන්නේ කේතය කරන්නේ කුමක්දැයි දන්නා ඔබ විසිනි.
අවවාදයයි: විකෘති පරීක්ෂාව ගණනය කිරීමේ මිල අධික වේ (එක් එක් විකෘතිය සඳහා අදාළ සියලුම පරීක්ෂණ නැවත ක්රියාත්මක වේ). එබැවින් පොදු සහ සාධාරණ උපාය මාර්ගයක් වන්නේ සෑම ඒකාබද්ධ කිරීමකටම වඩා, විවේචනාත්මක මොඩියුල සඳහා සතිපතා හෝ පූර්ව-නිකුතු ගැඹුරු චෙක්පතක් ලෙස උපලේඛනගත කිරීමයි.
දුර්වල ක්ෂණික / ශක්තිමත් විමසුම
දුර්වල: "මගේ පරීක්ෂණ ප්රමාණවත්ද?"
ශක්තිමත්: "මෙම ශ්රිතය සහ පරීක්ෂණ කට්ටලය සඳහා රතු කණ්ඩායමක් ලෙස ක්රියා කරන්න. (1) විනාශ කළ හැකි කේතයේ විකෘති 8 ක් ජනනය කරන්න (ක්රියාකරු ආදේශනය, මායිම් මාරුව, කොන්දේසි ප්රතිලෝම, ආපසු අගය ආදේශනය) (2) එක් එක් විකෘතිය සඳහා, පවතින පරීක්ෂණවලින් එය අල්ලා ගන්නේ කුමන පරීක්ෂාවෙන්ද යන්න සඳහන් කරන්න. (3) එක් එක් විකෘතිය සඳහා එය නොපෙන්වයි. මෙම පරීක්ෂණ සියල්ල සමත් නමුත් ව්යාපාරික රීතිය+පරීක්ෂණ උල්ලංඝනය කරයි: [පේස්ට්]"
බලවත් ක්ෂණික; එය AI ස්ථානගත කරන්නේ ප්රශංසා යන්ත්රයක් නොව පරීක්ෂණ බිඳීමේ පරීක්ෂකයෙකු ලෙස ය.
පිටපත් කළ හැකි සැකිලි හතරක්
1) අතින් විකෘති පාලනය:
මෙම කේතය සඳහා සැලකිය යුතු විකෘති 8ක් (සුළු චේතනාන්විත බාධා කිරීම්) ජනනය කරන්න: අංක ගණිත ක්රියාකරු ආදේශනය, සංසන්දන සීමාව (> එදිරිව >=), තාර්කික ප්රතිලෝම, ප්රතිලාභ/ස්ථාවර ආදේශනය, කොන්දේසි මඟ හැරීම. සෑම විකෘතියක් සඳහාම, පවතින පරීක්ෂණවලින් එය අල්ලා ගන්නේද නැද්ද යන්න අනාවැකි පළ කරන්න. කේතය+ පරීක්ෂණ: [අලවන්න]
2) ඉතිරි වී ඇති විකෘතිය මරා දැමීම:
පහත විකෘති පරීක්ෂණ වාර්තාවේ ඉතිරිව ඇති (අල්ලා නොගත්) විකෘති අඩංගු වේ: [ලැයිස්තුව/වාර්තාව]. සෑම එකක් සඳහාම, එම විකෘතිය විනාශ කරන අවම පරීක්ෂණයක් ලියන්න (එම ආකාරයෙන් කැඩී ගිය විට කේතය රතු පැහැයට හැරේ). පරීක්ෂණය තහවුරු කරන හැසිරීම ගැන අදහස් දක්වන්න.
3) රතු කණ්ඩායම - රුධිර පරීක්ෂාව:
පහත දැක්වෙන සියලුම පරීක්ෂණ සමත් වන නමුත් පහත ව්යාපාරික රීතිය උල්ලංඝනය කරන කේතයක් ඔබට ලිවිය හැකිද: [ව්යාපාරික රීතිය]. එසේ නම්, මෙම පරීක්ෂණවල ඇති අඩුපාඩුව මෙයට ඉඩ දෙන්නේ කුමක්ද? එම ලූපය වසා දමන පරීක්ෂණය එක් කරන්න. පරීක්ෂණ: [පේස්ට්]
4) පරීක්ෂණ තත්ත්ව පරීක්ෂාව:
ගුණාත්මකභාවය සඳහා මෙම පරීක්ෂණ කට්ටලය පරීක්ෂා කරන්න. එක් එක් පරීක්ෂණය සඳහා ලකුණු කරන්න:- සත්ය ප්රකාශයක් තිබේද නැතහොත් එය මුක්කුද?- අපේක්ෂිත අගය ස්වාධීනද, කේතයෙන් ව්යුත්පන්න වී තිබේද?- එය ව්යාපාර රීතිය හෝ සුළු දෙයක් සත්යාපනය කරන්නේද? අවසාන වශයෙන් ඇස්තමේන්තුගත "සැබෑ සහතික ලකුණු" සහ දුර්වලම පරීක්ෂණ 3 ලබා දෙන්න. පරීක්ෂණ: [පේස්ට්]
කුඩා නඩු තුනක්
නඩුව 1 — ආවරණය 92%, විකෘති ලකුණු 38%. එක් කණ්ඩායමක් ඉහළ ආවරණයක් මත රඳා පැවතුනි. ස්ට්රයිකර් සමඟ විකෘති පරීක්ෂණය ක්රියාත්මක කළ විට, ලකුණු ප්රමාණය 38% විය: නිපදවන ලද විකෘති බොහොමයක් නොනැසී පවතී. පරීක්ෂණ රේඛා ක්රියාත්මක නොවන බවට සහ හැසිරීම සත්යාපනය නොකරන බවට මෙය සාක්ෂියක් විය. කණ්ඩායම පරීක්ෂා කිරීමේ ගුණාත්මකභාවය සඳහා සති තුනක් ආයෝජනය කළේය; විකෘති ලකුණු 81% දක්වා වැඩි වූ අතර, මීළඟ නිකුතුවේදී මෙම බීෆ්-අප් පරීක්ෂණ මගින් සැබෑ ගණනය කිරීමේ දෝෂ දෙකක් හසු විය.
නඩුව 2 - AI පරීක්ෂණය රැවටීය. "රතු කණ්ඩායම" අච්චුවක් සමඟින්, විශේෂඥයෙක් දැනට පවතින පරීක්ෂණ සමත් වූ නමුත් වට්ටම් රීතිය උල්ලංඝනය කළ කේතය සඳහා AI වෙතින් ඉල්ලා සිටියේය. AI විසින් සෑම විටම ශුන්ය වට්ටමක් ලබා දෙන කේතය ලියා ඇත - සහ කිසිදු පරීක්ෂණයක් සත්ය වට්ටම් අගය සත්යාපනය නොකරන බැවින් සියලුම පරීක්ෂණ කොළ පැහැයෙන් පැවතුනි. පරතරය දැක ඇත, සැබෑ තහවුරු කිරීම් එකතු කරන ලදී.
නඩුව 3 - ප්රශංසා උගුල. කනිෂ්ඨ පරීක්ෂකයෙක් AI ගෙන් ඇසුවේ, "මගේ පරීක්ෂණ හොඳද?" සහ "ඉතා විස්තීර්ණ" යන පිළිතුර ඇසීමෙන් සහනයක් දැනුනි. ඔහුගේ ජ්යෙෂ්ඨ සගයා "පරීක්ෂණ තත්ත්ව විගණනය" අච්චුව භාවිතයෙන් එම පරීක්ෂණ විගණනය කර ඇත; පරීක්ෂණ 20 න් 12 ක්ම අලංකරණය (ප්රකාශයක් හෝ අනවශ්ය දෙයක් නොමැතිව) බව පෙනී ගියේය. නිවැරදි ප්රශ්නය නිවැරදි පිළිතුර ගෙන ආවේය.
පොදු වැරදි
- ගුණාත්මකභාවය සඳහා විෂය පථය වැරදියි. ඉහළ පේළි ආවරණයක් මත රඳා පැවතීම සහ විකෘති ලකුණු දෙස කිසිසේත් නොබලයි.
- AI හි ප්රශංසාව විශ්වාස කිරීම. "ඔයාගෙ පරීක්ෂණ හොඳයිද?" සහ ධනාත්මක පිළිතුර සහතිකය ලෙස සලකමින්.
- කේතයෙන් අපේක්ෂිත අගය ලබා ගැනීම. දෝෂ සහිත කේතය තහවුරු කරන ස්වයං-සත්යාපන පරීක්ෂණ.
- සුළු ප්රකාශවලින් සෑහීමට පත් වන්න. "ශුන්ය නොවේ", "200 ආපසු ලබා දී ඇත" වැනි සැබෑ රීතිය වලංගු නොවන චෙක්පත්.
- නොනැසී පවතින විකෘති නොසලකා හැරීම. විකෘති වාර්තාවට හසු නොවූ දේ නොසලකා හැරීම.
- විවේචනාත්මක කේතය අතින් විකෘති කිරීමට පවා උත්සාහ නොකරයි. මෙවලම නොමැති නම් "කේතය බිඳ දමා පරීක්ෂා කරන්න" පියවර මඟ හැරීම.
සාරාංශයකින්
Pseudo-trust යනු පරීක්ෂණ හරිත බැවින් මෘදුකාංග නිවැරදි බව විශ්වාස කරයි; නමුත් පරීක්ෂණ කිසිවක් තහවුරු නොකළ හැකිය. මෙය මැනීම සඳහා වන රන් ප්රමිතිය විකෘති පරීක්ෂණයයි: හිතාමතාම කේතය බිඳ දැමීම සහ පරීක්ෂණවලට එය හසු වන්නේද යන්න මැන බැලීමයි. විකෘති ලකුණු යනු ප්රතිශත ආවරණයට වඩා ගුණාත්මක බවේ අවංක මිනුමක් වේ. AI දෙකම ව්යාජ විශ්වාසයක් ඇති කරන අතර එය දඩයම් කිරීමේදී බලවත් රතු කණ්ඩායමක් බවට පත්වේ - "මෙම පරීක්ෂණ සමත් වන දෝෂයක් නිෂ්පාදනය කරන්න" යනුවෙන් අසන්න. ඔබේ පරීක්ෂණ පරීක්ෂා කරන්න: සත්ය ප්රකාශය, ස්වාධීන අපේක්ෂිත අගය, ව්යාපාර රීති වලංගුකරණය, සහ මිය ගිය විකෘති.
යෙදුම් කාර්යය
ඔබේම ව්යාපෘතියෙන් ව්යාපාර රීතියක් සහ එහි පරීක්ෂණ අඩංගු ශ්රිතයක් ආයාත කරන්න. හැකි නම්, විකෘති මෙවලමක් (Stryker/Pitest/mutmut) ධාවනය කර විකෘති ලකුණු මැනීම; මෙවලමක් නොමැති නම්, "අතින් විකෘති පාලනය" අච්චුව සමඟ අවම වශයෙන් විකෘති 8 ක් ජනනය කර ඒවා අතින් උත්සාහ කරන්න. ඉතිරි වී ඇති සෑම විකෘතියක් සඳහාම, "මිය යෑමේ විකෘතිය" අච්චුව සමඟ නව පරීක්ෂණයක් ලියන්න. අවසාන වශයෙන්, "රතු කණ්ඩායම" රටාව සමඟින්, AI හට ඔබගේ පරීක්ෂණ රැවටෙන කේතයක් නිපදවිය හැකිදැයි බලන්න. ඔබේ ආරම්භක සහ අවසන් විකෘති ලකුණු වාර්තා කරන්න (හෝ අල්ලා ගත්/මුළු විකෘති අනුපාතය).
පිරික්සුම් ලැයිස්තුව
- [ ] මම පරීක්ෂණයේ ගුණාත්මක භාවය ඇගයීමට ලක් කළේ විකෘති ලකුණු මගින් මිස ආවරණයෙන් නොවේ.
- [ ] මම විවේචනාත්මක කේතය සඳහා විකෘති පරීක්ෂාව (මෙවලම මගින් හෝ අතින්) ධාවනය කළෙමි.
- [ ] මම ඉතිරිව ඇති සෑම විකෘතියක් සඳහාම නව පරීක්ෂණ ලිව්වෙමි.
- [ ] මම රතු කණ්ඩායම ලෙස AI භාවිතා කළ අතර මගේ පරීක්ෂණවල අඩුපාඩු සෙව්වෙමි.
- [ ] මම AI හි "ඔබේ පරීක්ෂණ හොඳයි" යන ප්රශංසාව සහතික කිරීමක් ලෙස ගත්තේ නැත.
- [ ] සෑම පරීක්ෂණයක්ම සත්ය ප්රකාශය, ස්වාධීන අපේක්ෂිත අගය සහ ව්යාපාර රීතිය සත්යාපනය කරන බව මම පරීක්ෂා කළෙමි.