Selv om alle vet hvor viktig det er å teste koden for å luke vekk feil, er antagelig testing ett av de områdene det slurves mest med innenfor programvareutvikling. Kanskje det tar for mye tid, er kjedelig – eller av andre grunner ikke blir prioritert.
Men kanskje kunstig intelligens, som ChatGPT, kan gjøre testjobben enklere og mer effektiv?
Bidragsytere til den åpen kildekodebaserte databasen StarRocks har testet hvorvidt ChatGPT kan brukes til testing av databaser. Det skriver CelerData, som vedlikeholder StarRocks-kildekoden, i et blogginnlegg.
«Dette er bare begynnelsen av flere nye områder hvor kunstig intelligens kan støtte utviklere med smartere verktøy.»
– Imponerende resultater
Ifølge blogginlegget har folk StarRocks-miljøet satt ChatGPT opp mot flere populære testverktøy for å finne ut om det er noen fordeler ved å bruke ChatGPT fremfor de tradisjonelle verktøyene.
- Resultatene fra StarRocks-fellesskapets test var imponerende. ChatGPT holdt stand når de ble stilt opp mot andre eksisterende og populære, automatiserte testverktøy, heter det i blogginnlegget.
Helge Standal er sjefsarkitekt og frontend-sjef i Noa Ignite og tror vi har sett bare begynnelsen.
– Dette er bare begynnelsen av flere nye områder hvor kunstig intelligens kan støtte utviklere med smartere verktøy, sier Standal til kode24.
- Jeg deployer alltid på en fredag ettermiddag. Kan du gjøre det?
Testet mot SQLsmith og SQLancer
To av verktøyene som ble sammenlignet med ChatGPT var SQLsmith og SQLancer.
SQLsmith er et automatisert databasetestverktøy som genererer tilfeldige SQL-spørringer basert på et skjema, og kjører disse spørringene mot en database for å teste ytelse og robusthet.
Selv om det var for tidlig å si om ChatGPT helt kan eliminere behovet for SQLsmith, klarte den jobben langt på vei. Med ChatGPT kan man lage tilfeldige og komplekse SQL-spørringer basert på naturlig språk-input.
Det viste seg at ChatGPT kunne være nyttig også for å vedlikeholde automatiserte database-testverktøy. Hver gang en ny funksjon, operator eller datatype legges til, må utviklerne i dag oppdatere kildekoden for testverktøyene sine – noe som er tidkrevende.
I forsøkene klarte ChatGPT først ikke å lage enkelte databasespørringer som brukte ny funksjonalitet, men ved å gi ChatGPT noen hint i form av lenker til relevant ny dokumentasjon kunne AI-en trenes opp til å skrive også disse uten problemer.
«Om kunstig intelligens kan føre til færre bugs i software er det utelukkende positivt.»
Trenger litt mer trening
Testene som ble gjennomført av StarRocks-utviklermiljøet viser ifølge CelerDatas blogginnlegg at ChatGPT har et stort potensiale når det gjelder å gjøre automatisert testing mer effektivt.
Men det fortsatt gjenstår en del arbeid. Det er fortsatt enkelte ting ChatGPT ikke forstår helt, og ikke alle SQL-spørringer blir hundre prosent korrekt.
Men ifølge bloggforfatteren er vi ikke langt unna, og litt trening kan hjelpe CHatGPT med å forstå dette i nær fremtid.
Helge Standal i Noa Ignite tror kunstig intelligens vil endre måten vi jobber på.
– Innen automatisert testing er det sannsynlig å tenke at kunstig intelligens vil endre en del på hvordan vi jobber. Om det kan føre til færre bugs i software er jo det også utelukkende positivt.