Experiment: Unit tests automatiseren

Door Remy Dheygere

We hebben eens een generiek open-source model getest om code te genereren. Met name het schrijven van unit tests kan vrij repetitief worden, een ideale use case dus om te gaan automatiseren.

In het eerste voorbeeld hebben we twee methodes waar we unit tests voor willen genereren. We geven alvast één voorbeeld mee en we schrijven de naam neer van de nieuwe methode waarvan we verwachten dat deze wordt aangevuld.

 

Input:

Output:

Wanneer we naar de output kijken zien we dat het model de juiste methode kiest, en vervolgens ook snapt dat de uitkomst niet gelijk moet zijn aan het voorgaand voorbeeld, maar aan nul in plaats van twintig.

 

Laten we het eens proberen zonder een voorbeeld, met enkel de code als input en de aanzet naar een test case.

Input:

Ik heb alvast commentaar bij de output gezet:

We zien dat het juiste skelet wordt gegenereerd. Het taalmodel snapt duidelijk de gegeven code en het concept van unit tests, de eerste twee kloppen zelfs volledig

 

Indien u interesse heeft in de originele code:

We zien dus dat het gebruiken van taalmodellen zeker een optie is als pair-programmer. u kunt voor commerciele opties gaan zoals GitHub Copilot of simpelweg een stuk code in Eleuther (open source, gratis) plakken. Eerder zagen we ook al dat GPT-3 in staat is om een simpel game te maken, dus waarom uw repetitieve use cases niet delegeren aan een AI?