Abstract-PHP webbprogram genererar rutinmässigt ogiltig HTML. Moderna webbläsare tyst korrigera HTML-fel, men ibland missbildade sidor gör inkonsekvent, orsaka webbläsare kraschar, eller exponera säkerhetssårbarheter. Att rätta fel i genererade sidor är oftast enkelt, men att reparera det genererande PHP-programmet kan vara mycket svårare. Vi observerar att missbildad HTML ofta produceras av felaktiga konstanta utskrifter, d.v.s. uttalanden som skriver ut ordalistiska strängar, och presentera två verktyg för att automatiskt reparera sådana HTML-genereringsfel. PHPQuickFix reparerar enkla fel genom att statiskt analysera enskilda utskrifter. PHPRepair hanterar mer allmänna reparationer med ett dynamiskt tillvägagångssätt. Baserat på en testsvit, egenskapen att alla tester bör producera sin förväntade utdata kodas som en sträng begränsning över variabler som representerar konstant utskrifter. Lösa denna begränsning beskriver hur konstanta utskrifter måste ändras för att göra alla tester passera. Båda verktygen implementerades som en Eclipse plugin och utvärderades på PHP-program som innehåller hundratals HTML-genereringsfel, varav de flesta våra verktyg kunde reparera automatiskt.
PHPRepair REF fokuserar på HTML-genereringsfel i PHP-program.
Automated repair of HTML generation errors in PHP applications using string constraint solving
{'venue': '2012 34th International Conference on Software Engineering (ICSE)', 'journal': '2012 34th International Conference on Software Engineering (ICSE)', 'mag_field_of_study': ['Computer Science']}