skip to main content
10.1145/1985793.1985978acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

ReAssert: a tool for repairing broken unit tests

Published: 21 May 2011 Publication History

Abstract

Successful software systems continuously change their requirements and thus code. When this happens, some existing tests get broken because they no longer reflect the intended behavior, and thus they need to be updated. Repairing broken tests can be time-consuming and difficult.
We present ReAssert, a tool that can automatically suggest repairs for broken unit tests. Examples include replacing literal values in tests, changing assertion methods, or replacing one assertion with several. Our experiments show that ReAssert can repair many common test failures and that its suggested repairs match developers' expectations.

References

[1]
Hamcrest - Library of matchers for test expressions. http:/http://code.google.com/p/hamcrest/.
[2]
M. Boshernitsan, R. Doong, and A. Savoia. From Daikon to Agitator: Lessons and challenges in building a commercial tool for developer testing. In ISSTA, 2006.
[3]
B. Daniel, T. Gvero, and D. Marinov. On test repair using symbolic execution. In ISSTA, 2010.
[4]
B. Daniel, V. Jagannath, D. Dig, and D. Marinov. ReAssert: Suggesting repairs for broken unit tests. In ASE, 2009. http://mir.cs.illinois.edu/reassert/.
[5]
Improving Works. Infinitest. http://improvingworks.com/products/infinitest/.
[6]
M. Mirzaaghaei, F. Pastore, and M. Pezze. Automatically repairing test cases for evolving method declarations. In ICSM, 2010.
[7]
D. Saff and M. D. Ernst. An experimental evaluation of continuous testing during development. In ISSTA, 2004.
[8]
N. Tillmann and J. de Halleux. Pex - white box test generation for .NET. In Tests and Proofs. 2008. http://research.microsoft.com/projects/Pex/.
[9]
N. Tillmann and W. Schulte. Unit tests reloaded: Parameterized unit testing with symbolic execution. Tech report, Microsoft Research, 2005.
[10]
A. Zaidman, B. V. Rompaey, S. Demeyer, and A. van Deursen. Mining software repositories to study co-evolution of production & test code. In ICST, 2008.

Cited By

View all
  • (2021)Does Refactoring Break Tests and to What Extent?2021 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME52107.2021.00022(171-182)Online publication date: Sep-2021
  • (2021)Domain-Specific Fixes for Flaky Tests with Wrong Assumptions on Underdetermined SpecificationsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00018(50-61)Online publication date: 22-May-2021
  • (2021)Rotten green tests in Java, Pharo and PythonEmpirical Software Engineering10.1007/s10664-021-10016-226:6Online publication date: 24-Sep-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '11: Proceedings of the 33rd International Conference on Software Engineering
May 2011
1258 pages
ISBN:9781450304450
DOI:10.1145/1985793
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 May 2011

Check for updates

Author Tags

  1. reassert
  2. test repair
  3. testing tools
  4. unit testing

Qualifiers

  • Research-article

Conference

ICSE11
Sponsor:
ICSE11: International Conference on Software Engineering
May 21 - 28, 2011
HI, Waikiki, Honolulu, USA

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)1
Reflects downloads up to 14 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Does Refactoring Break Tests and to What Extent?2021 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME52107.2021.00022(171-182)Online publication date: Sep-2021
  • (2021)Domain-Specific Fixes for Flaky Tests with Wrong Assumptions on Underdetermined SpecificationsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00018(50-61)Online publication date: 22-May-2021
  • (2021)Rotten green tests in Java, Pharo and PythonEmpirical Software Engineering10.1007/s10664-021-10016-226:6Online publication date: 24-Sep-2021
  • (2020)RTjProceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Companion Proceedings10.1145/3377812.3382151(69-72)Online publication date: 27-Jun-2020
  • (2020)TarTar: A Timed Automata Repair ToolComputer Aided Verification10.1007/978-3-030-53288-8_25(529-540)Online publication date: 14-Jul-2020
  • (2019)Intent-Preserving Test Repair2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST)10.1109/ICST.2019.00030(217-227)Online publication date: Apr-2019
  • (2019)Rotten green testsProceedings of the 41st International Conference on Software Engineering10.1109/ICSE.2019.00062(500-511)Online publication date: 25-May-2019
  • (2019)Automating CUDA synchronization via program transformationProceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2019.00075(748-759)Online publication date: 10-Nov-2019
  • (2018)Visual web test repairProceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3236024.3236063(503-514)Online publication date: 26-Oct-2018
  • (2014)Using Genetic Algorithms to Repair JUnit Test CasesProceedings of the 2014 21st Asia-Pacific Software Engineering Conference - Volume 0110.1109/APSEC.2014.51(287-294)Online publication date: 1-Dec-2014
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media