Automatiserad program reparation har visat löfte om att minska betydande manuell ansträngning felsökning kräver. Detta dokument tar upp ett underskott av tidigare utvärderingar av automatiserade reparationstekniker som orsakas av reparationsprogram och utvärdera genererade patchars korrekthet med hjälp av samma uppsättning av tester. Eftersom testerna är ett ofullständigt mått på programkorrekthet, diskriminerar utvärderingar av denna typ inte mellan korrekt patchar och patchar som överpassar tillgängliga tester och bryter oprövad men önskad funktionalitet. Detta papper utvärderar två välstuderade reparationsverktyg, GenProg och TrpAutoRepair, på ett offentligt tillgängligt riktmärke av 998 buggar, var och en med en mänsklig-skriven patch. Genom att utvärdera patchar med hjälp av tester oberoende av de som används under reparation, finner vi att verktygen sannolikt inte kommer att förbättra andelen oberoende tester som godkänts, och att kvaliteten på patchar är proportionell mot täckningen av testsviten som används under reparation. För program som klarar de flesta tester, verktygen är lika sannolikt att bryta tester som att fixa dem. Dock nybörjare utvecklare också overfit, och automatiserad reparation utför inte värre än dessa utvecklare. Förutom övermontering mäter vi effekterna av testsvitens täckning, provsvitens härkomst och startprograms kvalitet, samt skillnaden i kvalitet mellan nyutvecklade och verktygsgenererade plåster när kvaliteten bedöms med en testsvit som är oberoende av den som används för patchgenerering.
På grund av ofullständigheten i testsviter, kan de genererade patchar överpassa tillgängliga tester och kan bryta oprövad funktionalitet REF.
Is the cure worse than the disease? overfitting in automated program repair
{'venue': 'ESEC/FSE 2015', 'journal': None, 'mag_field_of_study': ['Computer Science']}