ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-28, Tuesday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

CI පයිප්ලයින්‌වල රීට්‍රයි 2 එකතු කිරීමෙන් බග්‌වල සැඟවීම – 8 මාස පසු හෙළි වූ පාඩම

CI පයිප්ලයින්‌වල රීට්‍රයි 2 එකතු කිරීමෙන් බග්‌වල සැඟවීම – 8 මාස පසු හෙළි වූ පාඩම

ඉරිදා රාත්‍රියේ CI පයිප්ලයින් එකේ --retries 2 යන සැකසුම එක් කළ පසු, පළමුවෙන්ම සියලු රත්‍රි පරීක්ෂණ හරිත වුණා. ඒක දැකලා කාලෙකින්, තේරුම් ගත හැකි වුණේ මේ වෙනස පරීක්ෂණ වල දෝෂ සඟවා තැබීමක් බවයි.

ඉහළ පරිමාණ nightly suite එකේ 400 කට ආසන්න specs තිබුණා. ඒ අතරින් 3‑8 specs එකිනෙකට වෙනස්ව සෑම වාරයකම අසාර්ථක වෙයි. ඒ අසාර්ථකතා දවසේ පරීක්ෂකයා විසින් රිපෝර්ට් බලලා, පසුපස රීට්‍රයි නොකරලා, පසුදා පසු පරීක්ෂණ නැවත ක්‍රියාත්මක කරලා හරි කරලා ඉවර කරලා.

ඇත්තටම, රීට්‍රයි එක flaky පරීක්ෂණ අඩු කරයි, නියම බග්‌වලට හෝ ලාංකීය පද්ධතියට අඩු නොකරයි කියලා බොහෝ ඉංජිනේරුවන් විශ්වාස කරලා. නමුත් ඒ අදහස වැරදිය. රීට්‍රයි 2 යනු, පරීක්ෂණයක් අසාර්ථක වූ ත්‍රිත්වයක් (මුල් එකත් එක්ක) පමණක් අඩු කරයි.

උදාහරණයක් ලෙස, 30% අවස්ථාවක race condition එකක් තියෙනවා කියල ගන්න. රීට්‍රයි නොමැතිව, එය සෑම තෙවැනි රාත්‍රියකම දෝෂයක් වශයෙන් පෙන්වෙයි. රීට්‍රයි 2 එක් කළාම, ඒ අවස්ථාව 0.3 × 0.3 × 0.3 = 0.027 (2.7%) වෙයි – අර්ථාතුරුව, පරීක්ෂණයක් පළමු වාරයේ අසාර්ථක වුනත්, දෙවන, තෙවන වාරයේත් අසාර්ථක නොවෙයි නම්, CI හරිතයි.

5% අවස්ථාවේ තදබදයක් වුවහොත්, ඒ probability 0.05³ = 0.000125 (එක් හෙට්ටුවකට 1/8000) වෙයි. එම බග්‌ එක පාරිභෝගිකයන්ට පවා පෙනෙන්නේ නමුත් CI පද්ධතියට අගුළු වැටෙන්නේ නැත.

අපේ අවසාන බග් එක, ගෙවීම් පෝරමයේ double‑submit ගැටලුවක්. වේගවත් දෙවරක් click කිරීමෙන් එකම order දෙකක් සෑදුණා. එම ගැටලුව පරීක්ෂණය රීට්‍රයි කරලා හරිතයි කියලා පෙනුන නිසා, කාලයත් සමඟ support කණ්ඩායමට පළමුවෙන් හදුනාගන්න ලැබුණා.

ඉතිං, රීට්‍රයි එක නිෂ්පාදනය වැඩි ස්ථායි නොකරයි, ඒ වෙනුවට අපගේ පද්ධතියේ දෝෂ පිළිබඳ අවබෝධය අඩු කරයි. පරිශීලකයාට --retries 2 ලැබෙන්නේ නැත, නමුත් අපේ කේතයේ වැරදි සැඟවීමෙන් සේවාව අවිශ්වාසනීය වේ.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

  • ලෝකයේ ප්‍රචලිත CI/CD පද්ධතිවල රීට්‍රයි සැකසුම් ගැන නිවැරදි අවබෝධයක් ලබාගත හැක.
  • ශ්‍රී ලංකාවේ මෘදුකාංග සංවර්ධකයින්ට flaky tests හඳුනාගැනීමේ වැදගත්කම තේරුම්ගත හැක.
  • දේශීය startups සහ IT සමාගම්ට පරීක්ෂණයේ ගුණාත්මකත්වය වැඩි කරගැනීමට මාර්ගෝපදේශයක් ලැබේ.
  • අපගේ දේශීය talent pool එකට DevOps best practices පිළිබඳ වෘත්තීය පුහුණුව ලබාදීමේ අවස්ථාව.

අවසන් වශයෙන්, රීට්‍රයි එකේ අධික භාවිතය පරීක්ෂණයේ විශ්වාසනීයත්වය අඩු කරයි. ඒ නිසා, CI pipelines සැකසුම කරන විට, flaky tests හඳුනාගෙන, ඒවා නිවැරදි කර පසු රීට්‍රයි යොදා ගැනීම වඩාත් ප්‍රයෝජනවත් වේ.

💡 CI pipelines සැකසීමේදී flaky tests හඳුනාගන්න, රීට්‍රයි අධික භාවිතයෙන් වළක්වන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#CI #retries #flaky-tests #devops #software-testing