
Die Entwicklung von Software wird immer komplexer und erfordert daher auch eine entsprechende Qualitätssicherung. Mutation Testing ist eine Methode, um die Qualität von Tests zu verbessern, indem gezielt Fehler im Quellcode eingeführt werden, um zu sehen, ob die Tests diese finden. Bisher war es jedoch schwierig, Mutation Testing effizient einzusetzen. Meta hat jedoch mit der Entwicklung des Automated Compliance Hardening (ACH) Tools einen Weg gefunden, Mutation Testing mithilfe von Large Language Models (LLMs) zu automatisieren und so die Einhaltung von Compliance-Vorschriften zu erleichtern.
Durch die Verwendung von LLMs konnte Meta die traditionellen Barrieren von Mutation Testing überwinden. Mutation Testing galt lange Zeit als Methode zur Bewertung der Testqualität, nicht jedoch als Methode zur Generierung von Tests. Durch den Einsatz von generativer KI konnte Meta diese Methode effizienter und skalierbarer gestalten.
Die Herausforderung beim Skalieren von Mutation Testing liegt darin, dass traditionelle Ansätze eine große Anzahl von Mutanten generieren, was rechenintensiv und schwer zu skalieren ist. Zudem können diese Mutanten unrealistisch sein und nicht die tatsächlichen Fehler abbilden, die Entwickler interessieren. Auch die Bestimmung äquivalenter Mutanten und die Ressourcenintensität des Mutation Testing sind Herausforderungen, denen sich Meta gegenübersieht.
Durch den Einsatz von LLMs konnte Meta diese Herausforderungen angehen. Das ACH-Tool generiert realistische Mutanten, die spezifisch auf bestimmte Fehlerklassen zugeschnitten sind, und erleichtert so das Testen. Zudem werden äquivalente Mutanten effizient erkannt und Tests generiert, die effektiv und ressourcenschonend sind. Dies ermöglicht es den Ingenieuren bei Meta, sich auf die Bewertung der Tests zu konzentrieren, anstatt sie selbst erstellen zu müssen.