MI balstītu rīku pielietošana GUI automatizēto testu uzlabošanai
Автор
Ozoliņa, Irina
Co-author
Latvijas Universitāte. Datorikas fakultāte
Advisor
Celms, Edgars
Дата
2024Metadata
Показать полную информациюАннотации
Tīmekļa lapu grafiskās saskarnes testēšanas automatizācija ir sarežģīts un laikietilpīgs process, jo mūsdienu grafiskās saskarnes ir mainīgas ar bezgala daudz iespējamiem mijiedarbības scenārijiem. Tādēļ šādu testu izstrāde ir laikietilpīgs un dārgs process, un, ja šo procesu būtu iespējams kaut daļēji automatizēt, tas ievērojami uzlabotu programmatūras kvalitāti un samazinātu izstrādes laiku. Lai izvērtētu iespējamību lietot mākslīgā intelekta risinājumus tīmekļa lapu testēšanai, darbā tiek izstrādāts rīks automatizētu testu ģenerēšanai, kas balstīts uz lielajiem valodas modeļiem un ir piemērots dažādu tīmekļa vietņu testēšanai. Izstrādātais rīks novērtēts uz četrām dažādām tīmekļa vietnēm, kuras satur biežāk sastopamos lapas pamatelementus, kā piemēram, pogas, izvēlnes, ievades laukus un brīdinājumus. Risinājums tiek salīdzināts ar klasiskiem uzvedņu inženierijas risinājumiem (piemēram, nulles šāviņa, domu ķēdes) un hibrīda risinājumiem, tādiem kā AlphaCodium un WebTestingLLM. Darbā piedāvātais risinājums uzrāda labāku testa scenāriju pārklājumu, veiksmīgas testa izpildes un kompilējamības rezultātus nekā pārējie risinājumi. Savukārt darbā piedāvātā rīka veidotie testi pārspēj cilvēku testētāju izveides ātrumā un izmaksās. Automating the testing of web page graphical interfaces is a complex and time-consuming process, as modern graphical interfaces are dynamic with countless possible interaction scenarios. Therefore, developing such tests is both time-consuming and expensive. If this process could be at least partially automated, it would significantly improve software quality and reduce development time. To evaluate the feasibility of using artificial intelligence solutions for web page testing, this work develops a tool for generating automated tests based on large language models, which is suitable for testing various websites. The developed tool is evaluated on four different websites that include common page elements such as buttons, menus, input fields, and alerts. The solution is compared with classical prompt engineering solutions (e.g., zero-shot, chain of thought) and hybrid solutions like AlphaCodium and WebTestingLLM. The proposed solution demonstrates better test scenario coverage, successful test execution, and compilation results compared to other solutions. Additionally, the tests created by the proposed tool outperform human testers in terms of speed and cost.