• DocumentCode
    650698
  • Title

    Efficient Automated Program Repair through Fault-Recorded Testing Prioritization

  • Author

    Yuhua Qi ; Xiaoguang Mao ; Yan Lei

  • Author_Institution
    Sch. of Comput., Nat. Univ. of Defense Technol., Changsha, China
  • fYear
    2013
  • fDate
    22-28 Sept. 2013
  • Firstpage
    180
  • Lastpage
    189
  • Abstract
    Most techniques for automated program repair use test cases to validate the effectiveness of the produced patches. The validation process can be time-consuming especially when the object programs ship with either lots of test cases or some long-running test cases. To alleviate the cost for testing, we first introduce regression test prioritization insight into the area of automated program repair, and present a novel prioritization technique called FRTP with the goal of reducing the number of test case executions in the repair process. Unlike most existing prioritization techniques frequently requiring additional cost for gathering previous test executions information, FRTP iteratively extracts that information just from the repair process, and thus incurs trivial performance lose. We also built a tool called TrpAutoRepair, which implements our FRTP technique and has the ability of automatically repairing C programs. To evaluate TrpAutoRepair, we compared it with GenProg, a state-of-the-art tool for automated C program repair. The experiment on the 5 subject programs with 16 real-life bugs provides evidence that TrpAutoRepair performs at least as good as GenProg in term of success rate, in most cases (15/16), TrpAutoRepair can significantly improve the repair efficiency by reducing efficiently the test case executions when searching a valid patch in the repair process.
  • Keywords
    program debugging; program testing; regression analysis; statistical testing; FRTP technique; GenProg; TrpAutoRepair; automated debugging; automated program repair; fault-recorded testing prioritization; regression test prioritization; test case prioritization; Computer bugs; Context; Data mining; Fault detection; Indexes; Maintenance engineering; Testing; automated debugging; automated program repair; efficiency; test case prioritization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance (ICSM), 2013 29th IEEE International Conference on
  • Conference_Location
    Eindhoven
  • ISSN
    1063-6773
  • Type

    conf

  • DOI
    10.1109/ICSM.2013.29
  • Filename
    6676889