← Nieuwste papers
💻 computer science

AutoRestTest at the SBFT 2026 Tool Competition

AutoRestTest, een tool die semantische afhankelijkheidsgrafen, multi-agent reinforcement learning en large language models combineert, behaalde de eerste plaats in alle drie de evaluatiecategorieën van de SBFT 2026 REST League door effectief fouten te detecteren en operaties te verwerken over 11 API's binnen een testbudget van één uur.

Oorspronkelijke auteurs: Tyler Stennett, Myeongsoo Kim, Saurabh Sinha, Alessandro Orso

Gepubliceerd 2026-07-02
📖 4 min leestijd☕ Koffiepauze-leesvoer

Oorspronkelijke auteurs: Tyler Stennett, Myeongsoo Kim, Saurabh Sinha, Alessandro Orso

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Stel je voor dat je een enorme, geautomatiseerde verkoopautomaat probeert te testen die duizenden verschillende artikelen verkoopt. De machine heeft een complex menu (de API) en je hebt geen blauwdrukken of de sleutels om hem open te maken (black-box testing). Je doel is om knoppen in verschillende combinaties in te drukken om te zien of de machine kapot gaat, het verkeerde item uitspuugt of crasht.

Dit is precies wat AutoRestTest doet, maar dan voor computersystemen die REST API's worden genoemd. In een recente wedstrijd genaamd de "REST League" bij SBFT 2026, fungeerde deze tool als een super-slimme, onvermoeibare robot-tester en won het eerste plaats in elke categorie.

Hier is hoe het werkt, onderverdeeld in eenvoudige concepten:

1. De Kaart: De "Semantic Property Dependency Graph"

Beschouw het API-menu als een gigantisch, verstrengeld web van draden. Sommige knoppen zijn met elkaar verbonden; als je op "Toevoegen aan winkelmandje" drukt, moet je eerst op "Artikel selecteren" hebben gedrukt. Als je ze in de verkeerde volgorde indrukt, kan de machine in de war raken.

AutoRestTest bouwt een kaart van deze verbindingen. Het gebruikt een slim systeem om het menu te lezen en te achterhalen welke knoppen "vrienden" met elkaar zijn op basis van hun namen en betekenissen. Terwijl het test, werkt het deze kaart in realtime bij en leert het nieuwe verbindingen die het onderweg ontdekt. Dit zorgt ervoor dat het geen tijd verspilt aan het indrukken van knoppen die niet logisch bij elkaar passen.

2. Het Team: Vier Gespecialiseerde Agenten

In plaats van één robot die alles probeert te doen, gebruikt AutoRestTest een team van vier gespecialiseerde agenten (zoals een sportteam met verschillende posities):

  • De Operation Agent: Beslist welke knop op het menu als volgende wordt ingedrukt.
  • De Parameter Agent: Beslist welke instellingen aan- of uit worden gezet (zoals kiezen tussen "groot" versus "klein").
  • De Value Agent: Bedenkt de werkelijke gegevens die in de vakjes moeten komen (zoals het typen van een naam of een getal).
  • De Dependency Agent: Houdt een oog op de kaart en zorgt ervoor dat het team de regels van het web van verbindingen volgt.

Deze agenten gebruiken een leermethode genaamd Reinforcement Learning. Denk aan het trainen van een hond:

  • Als de machine een "Succes"-melding geeft (2xx), krijgt het team een traktatie (een beloning).
  • Als de machine crasht of een foutmelding geeft (5xx), krijgt het team ook een traktatie, omdat het vinden van een crash juist het hele doel is!
  • Als de machine alleen zegt "Ik begrijp het niet", krijgt het team een zachte "nee".

In de loop van de tijd leert het team welke knopcombinaties het meest waarschijnlijk leiden tot fouten of tot het laten werken van zaken.

3. Het Brein: Het Large Language Model (LLM)

Om de gaten in te vullen (zoals hoe een gebruikersnaam of een datum eruit moet zien), gebruikt het hulpmiddel een Large Language Model (LLM). Stel je dit voor als een zeer goed geïnformeerde assistent die de context van de business begrijpt.

In plaats van willekeurige onzin te raden, kijkt de assistent naar het menu en zegt: "Aangezien dit een boekingssysteem voor vluchten is, moet de datum eruitzien als '2026-04-12'." Het genereert deze realistische waarden voordat het testen begint, zodat het team geen tijd verspilt aan het vragen aan de computer om tijdens de eigenlijke race na te denken. Dit maakt het testen ongelooflijk snel en efficiënt.

4. De Resultaten: De Race Winnen

In de wedstrijd werd AutoRestTest geconfronteerd met vijf andere top-tier testtools. Ze kregen één uur de tijd om 11 verschillende real-world systemen te testen met 317 verschillende operaties (knoppen).

  • Foutdetectie: AutoRestTest vond gemiddeld 67 unieke fouten per systeem. De op één na beste tool vond er slechts ongeveer 25. Dat is meer dan 2,5 keer beter.
  • Efficiëntie: Het vond deze fouten veel sneller dan de anderen.
  • Kosten: Het was verrassend goedkoop om te draaien, met een kostenpost van slechts ongeveer $0,02 per test per systeem.

De Ene Glitch

Het paper geeft toe dat het niet perfect was. Bij één specifieke test die te maken had met vluchtzoekopdrachten, crashte het hulpmiddel omdat het ervan uitging dat alle tekst in een specifiek formaat (UTF-8) geschreven was. Het is als een vertaler die perfect Engels spreekt, maar in de war raakt als iemand een ander accent gebruikt. De auteurs zijn van plan dit in toekomstige versies te repareren.

Samenvatting

AutoRestTest is als een hooggeorganiseerd, zelflerend rechercheurskwartet. Het tekent een kaart van de regels, verdeelt het werk onder vier experts, gebruikt een slimme assistent om realistische scenario's te voorspellen, en leert van elk succes en elke fout. Het resultaat? Het vond veel meer bugs, sneller en goedkoper dan welk ander hulpmiddel dan ook in de wedstrijd.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →