Efficient Automated Program Repair through Fault-Recorded Testing Prioritization
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,...
        Saved in:
      
    
          | Published in | Proceedings - Conference on Software Maintenance (1987) pp. 180 - 189 | 
|---|---|
| Main Authors | , , | 
| Format | Conference Proceeding | 
| Language | English | 
| Published | 
            IEEE
    
        01.09.2013
     | 
| Subjects | |
| Online Access | Get full text | 
| ISSN | 1063-6773 | 
| DOI | 10.1109/ICSM.2013.29 | 
Cover
| 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. | 
    
|---|---|
| AbstractList | 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. | 
    
| Author | Yan Lei Xiaoguang Mao Yuhua Qi  | 
    
| Author_xml | – sequence: 1 surname: Yuhua Qi fullname: Yuhua Qi email: yuhua.qi@nudt.edu.cn organization: Sch. of Comput., Nat. Univ. of Defense Technol., Changsha, China – sequence: 2 surname: Xiaoguang Mao fullname: Xiaoguang Mao email: xgmao@nudt.edu.cn organization: Sch. of Comput., Nat. Univ. of Defense Technol., Changsha, China – sequence: 3 surname: Yan Lei fullname: Yan Lei email: yanlei@nudt.edu.cn organization: Sch. of Comput., Nat. Univ. of Defense Technol., Changsha, China  | 
    
| BookMark | eNotzE1PwjAcgPGaYCIgN29e9gU2-1_fj4SAkGAkiGfSru2ogZV03UE_vSR6ei6_PBM06mLnEHoCXAFg9bJZfLxVNQZS1eoOzZSQWHDFqJIAIzQGzEnJhSAPaNL3XxgzKggdo93S-9AE1-ViPuR40dnZYpdim_Sl2LurDqnIpxSH9lSs9HDO5d41MdmbOrg-h6696RBTyOFH5xC7R3Tv9bl3s_9O0edqeVisy-3762Yx35YBBMulB22Bg_KmYQ31RgsKjastkxaIkY0FwzwwLRWVluGaWiu5oZIZocAoRqbo-e8bnHPHawoXnb6PnAsupSK_y09RJQ | 
    
| CODEN | IEEPAD | 
    
| ContentType | Conference Proceeding | 
    
| DBID | 6IE 6IH CBEJK RIE RIO  | 
    
| DOI | 10.1109/ICSM.2013.29 | 
    
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Proceedings Order Plan (POP) 1998-present by volume IEEE Xplore All Conference Proceedings IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP) 1998-present  | 
    
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/ sourceTypes: Publisher  | 
    
| DeliveryMethod | fulltext_linktorsrc | 
    
| Discipline | Computer Science | 
    
| EISBN | 9780769549811 0769549810  | 
    
| EndPage | 189 | 
    
| ExternalDocumentID | 6676889 | 
    
| Genre | orig-research | 
    
| GroupedDBID | 6IE 6IF 6IH 6IK 6IL 6IM 6IN AAJGR AAWTH ADZIZ ALMA_UNASSIGNED_HOLDINGS BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO IPLJI OCL RIE RIL RIO RNS  | 
    
| ID | FETCH-LOGICAL-i175t-f1ad1619fbc5c4fba741ce2d58d13b8cd1b5f15a8948d5024dd86b485b791b953 | 
    
| IEDL.DBID | RIE | 
    
| ISSN | 1063-6773 | 
    
| IngestDate | Wed Aug 27 05:15:00 EDT 2025 | 
    
| IsPeerReviewed | false | 
    
| IsScholarly | false | 
    
| Language | English | 
    
| LinkModel | DirectLink | 
    
| MergedId | FETCHMERGED-LOGICAL-i175t-f1ad1619fbc5c4fba741ce2d58d13b8cd1b5f15a8948d5024dd86b485b791b953 | 
    
| PageCount | 10 | 
    
| ParticipantIDs | ieee_primary_6676889 | 
    
| PublicationCentury | 2000 | 
    
| PublicationDate | 2013-Sept. | 
    
| PublicationDateYYYYMMDD | 2013-09-01 | 
    
| PublicationDate_xml | – month: 09 year: 2013 text: 2013-Sept.  | 
    
| PublicationDecade | 2010 | 
    
| PublicationTitle | Proceedings - Conference on Software Maintenance (1987) | 
    
| PublicationTitleAbbrev | icsm | 
    
| PublicationYear | 2013 | 
    
| Publisher | IEEE | 
    
| Publisher_xml | – name: IEEE | 
    
| SSID | ssj0054734 ssib026764022  | 
    
| Score | 1.7769397 | 
    
| Snippet | Most techniques for automated program repair use test cases to validate the effectiveness of the produced patches. The validation process can be time-consuming... | 
    
| SourceID | ieee | 
    
| SourceType | Publisher | 
    
| StartPage | 180 | 
    
| SubjectTerms | automated debugging automated program repair Computer bugs Context Data mining efficiency Fault detection Indexes Maintenance engineering test case prioritization Testing  | 
    
| Title | Efficient Automated Program Repair through Fault-Recorded Testing Prioritization | 
    
| URI | https://ieeexplore.ieee.org/document/6676889 | 
    
| hasFullText | 1 | 
    
| inHoldings | 1 | 
    
| isFullTextHit | |
| isPrint | |
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3PS8MwGA2bJ09TN_E3PXg0dWmTNjnK2JjCZOAGu438lKF0MtqLf71f0q6KePBSSpOWkLa89yXf9x5CtyTVFqAgwVTKDA5CYjkkFguVK6AHLhlqvzQwe86mS_q0YqsOumtrYay1IfnMxv407OWbra78Ullw7uNcdFE351ldq7X_dhJoglColY7ylrphRxkgGGd5nrZJ7-L-cfQy80ldaeyJ5Q9TlYApkx6a7UdTp5K8xVWpYv35S6jxv8M9QoPv6r1o3uLSMerY4gT19vYNUfM399F8HOQj4BnRQ1Vugbpa42_0-VoREHO52UWNjU80kdV7ietYFXotvDZH8Qq9N1uvilTXcg7QcjJejKa4MVjAG2ANJXZEGmB8winNNHVKAr3QNjGMG5Iqrg1RzBEmuaDcMEBzY3imKGcqF0QJlp6ig2Jb2DMUceKDOUe9hBfVLhVEmNQJrhOXQJRNz1HfT9D6o9bQWDdzc_H35Ut0mATbCZ_LdYUOyl1lrwH8S3UT3voXtiqtJA | 
    
| linkProvider | IEEE | 
    
| linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3PT8IwGG0QD3pCBeNvd_DokG7taI-GQEAZIRESbqQ_DdFshmwX_3q_doDGePCyLGu3NE2X733t-95D6A7HykAoiEIiRAIXLkLRwSbksisBHtioo9zWQDpJhnPytKCLGrrf1cIYYzz5zLTdrT_L17kq3VaZd-5jjO-hfUoIoVW11nb1RNAIydBOPMqZ6vozZQjCYdLtxjvaO38Y9V5SR-uK2w5a_rBV8VFl0EDpdjwVmeStXRayrT5_STX-d8BHqPVdvxdMd5HpGNVMdoIaWwOHYPM_N9G07wUk4BvBY1nkAF6Ndi86xlYA0Fys1sHGyCcYiPK9CKtsFXrNnDpH9gq9V7nTRaqqOVtoPujPesNwY7EQrgA3FKHFQgPm41YqqoiVAgCGMpGmTONYMqWxpBZTwThhmkI815olkjAquxxLTuNTVM_yzJyhgGGXzlniRLyIsjHHXMeWMxXZCPJsco6aboKWH5WKxnIzNxd_P75FB8NZOl6OR5PnS3QYeRMKx-y6QvViXZprgAKFvPEr4Av39rBx | 
    
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=Proceedings+-+Conference+on+Software+Maintenance+%281987%29&rft.atitle=Efficient+Automated+Program+Repair+through+Fault-Recorded+Testing+Prioritization&rft.au=Yuhua+Qi&rft.au=Xiaoguang+Mao&rft.au=Yan+Lei&rft.date=2013-09-01&rft.pub=IEEE&rft.issn=1063-6773&rft.spage=180&rft.epage=189&rft_id=info:doi/10.1109%2FICSM.2013.29&rft.externalDocID=6676889 | 
    
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1063-6773&client=summon | 
    
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1063-6773&client=summon | 
    
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1063-6773&client=summon |