Tool-supported refactoring for javascrip
Asger Feldthaus, Todd Millstein, et al.
OOPSLA 2011
In recent years, there has been significant interest in fault-localization techniques that are based on statistical analysis of program constructs executed by passing and failing executions. This paper shows how the Tarantula, Ochiai, and Jaccard fault-localization algorithms can be enhanced to localize faults effectively in web applications written in PHP by using an extended domain for conditional and function-call statements and by using a source mapping. We also propose several novel test-generation strategies that are geared toward producing test suites that have maximal fault-localization effectiveness. We implemented various fault-localization techniques and test-generation strategies in Apollo, and evaluated them on several open-source PHP applications. Our results indicate that a variant of the Ochiai algorithm that includes all our enhancements localizes 87.8 percent of all faults to within 1 percent of all executed statements, compared to only 37.4 percent for the unenhanced Ochiai algorithm. We also found that all the test-generation strategies that we considered are capable of generating test suites with maximal fault-localization effectiveness when given an infinite time budget for test generation. However, on average, a directed strategy based on path-constraint similarity achieves this maximal effectiveness after generating only 6.5 tests, compared to 46.8 tests for an undirected test-generation strategy. © 1976-2012 IEEE.
Asger Feldthaus, Todd Millstein, et al.
OOPSLA 2011
Bowen Alpern, María Butrico, et al.
JAVA VM 2002
Karim Ali, Marianna Rapoport, et al.
ACM TOSEM
Frank Tip, Peter F. Sweeney
SIGPLAN Notices (ACM Special Interest Group on Programming Languages)