දැන් ඔබට මනුෂ්යයෙක් කිලෝබයිට් එකක් තට්ටු නොකර, සම්පුර්ණ නිෂ්පාදන ප්රදර්ශන රෙකෝඩ් කරන්න පුළුවන්. Playwright නමින් හඳුන්වන මෙවලමක් භාවිතා කර, සත්ය Chrome උදාහරණයක් තුළ යෙදුම පූර්ණයෙන්ම ක්රියාත්මක කර, ක්ලික්, පේජ් පරිවර්තන, API ඇමතුම් සියල්ල රෙකෝඩ් කරයි.
මෙම ක්රියාවලියේ වැදගත්ම ගැටළුව ‘පෙර පේජ් සූදානම් වීම’ කියලා හඳුන්වන අවස්ථාවයි. සාම්පලවල, සංවර්ධකයින් බොහෝවිට await page.waitForTimeout(2000) වගේ ස්ථිර කාල සීමා භාවිතා කරයි. නමුත් ලැප්ටොප් එකක උණුසුම් කෑෂ් එකක් තිබුණාම 2 තත්පරයක් තුළ පේජ් පූර්ණයෙන්ම පූරණය විය. CI සර්වර් එකක ශීතල කෑෂ් එකක් හෝ අඩු බැන්ඩ්විඩ්ත් තත්පර 2 තුළම පේජ් අඩු පූරණයක් පෙන්වයි. මේ නිසා රෙකෝඩ් වීඩියෝව අසමත්, අඩු හෝ වැඩි කාලයක් අඩු පෙන්වීමක් වෙනවා.
විශ්වාසදායකව පේජ් සූදානම් බව තීරණය කිරීමට ලේඛකයා “settle‑detection” කියන නව ක්රමයක් හඳුන්වයි. මෙය කාලය නොගණනේ, DOM එකේ වෙනස්කම් නැතිව 350 ms කාලයක් පසු, සහ ජාලය නිශ්ශබ්ද වීම (network idle) පරීක්ෂා කරයි. මේ සඳහා MutationObserver එකක් පිටුපස Inject කර, වෙනස්කම් සිදු වන වාරයක් වාරයක් ගණනය කර, නියම කාලය ඉක්මවා ගියත් හෝ නිශ්ශබ්ද කාලය ලැබුණත් රෙකෝඩ් එක අඛණ්ඩව ඉදිරියට යයි.
තවත් වැදගත් කරුණක් නම්, මෙම රෙකෝඩර් එක “state machine” වශයෙන් ක්රියා කරනවා. එක් එක් පියවර (click, wait, assert) පසු පසු පසුපසට ගමන් කරන අතර, පසුගිය පියවර නිවැරදිව අවසන් නොවූ විට පසු පියවරට යාම නොහැක. එම නිසා පියවර අතර “assertion” එකක් එක් කර, වැරදි පියවර හඳුනාගෙන ඉදිරියට යාම නතර කරයි. මේ නිසා දෝෂ හඳුනා ගැනීම සරල හා පැහැදිලි වේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
- ඩිවෙලපර්ස් – ස්වයංක්රිය රෙකෝඩ් මගින් නව පණිවිඩයෝ, API එකේ ප්රදර්ශන, SaaS දේවල් ඉක්මනින් පෙන්විය හැක.
- ශිෂ්යයින් – පරික්ෂණ හෝ අධ්යාපන කටයුතු සඳහා, නියමිත පියවර අනුගමනය කරමින් සජීවී දෘශ්ය පෙන්වීම් ලබාගත හැක.
- ව්යාපාර – නිෂ්පාදන විකිණුම්, ග්රාහක පුහුණු වීඩියෝ, සහාය දායකත්වය සඳහා අඩු පිරිවැයකින්, අධික ගුණාත්මක දර්ශන ලබා ගත හැක.
අවසන් වශයෙන්, Playwright මත පදනම්ව නිර්මාණය කරන ලද මෙම ස්වයංක්රිය රෙකෝඩ් පද්ධතිය, කාලය, සම්පත්, සහ තත්ත්වය යන වශයෙන් සංවර්ධකයින්ට විශාල වාසියක් ලබා දෙයි. ඔබේ නිෂ්පාදන දර්ශන දැන් මනුෂ්ය අතක් නොඅඩුවෙන්, පූර්ණවම ස්වයංක්රියව ලබාගන්න.