Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1328279.1328285acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

UnitPlus: assisting developer testing in Eclipse

Published: 21 October 2007 Publication History

Abstract

In the software development life cycle, unit testing is an important phase that helps in early detection of bugs. A unit test case consists of two parts: a test input, which is often a sequence of method calls, and a test oracle, which is often in the form of assertions. The effectiveness of a unit test case depends on its test input as well as its test oracle because the test oracle helps in exposing bugs during the execution of the test input. The task of writing effective test oracles is not trivial as this task requires domain or application knowledge and also needs knowledge of the intricate details of the class under test. In addition, when developers write new unit test cases, much test code (including code in test inputs or oracles) such as method argument values is the same as some previously written test code. To assist developers in writing test code in unit test cases more efficiently, we have developed an Eclipse plugin for JUnit test cases, called UnitPlus, that runs in the background and recommends test-code pieces for developers to choose (and revise when needed) to put in test oracles or test inputs. The recommendation is based on static analysis of the class under test and already written unit test cases. We have conducted a feasibility study for our UnitPlus plugin with four Java libraries to demonstrate its potential utility.

References

[1]
M. Aeschlimann, D. Baumer, and J. Lanneluc. Java tool smithing extending the Eclipse Java development tools. In Proc. EclipseCon, Tutorial, 2005.
[2]
M. Amorim, C. Pacheco, T. Xie, D. Marinov, and M. Ernst. An empirical comparison of automated generation and classification techniques for object-oriented unit testing. In Proc. 21st International Conference on Automated Software Engineering, pages 59--68, 2006.
[3]
S. Ananian. FLEX compiler infrastructure for Java, 2003. http://cycleserv2.csail.mit.edu/Harpoon.
[4]
B. Rompaey, B. Bois, and S. Demeyer. Characterizing the relative significance of a test smell. In Proc. 22nd International Conference on Software Maintenance, pages 391--400, 2006.
[5]
V. Wahler, C. Walton, P. Ombredanne, and C. Jones. moreUnit, 2007. http://moreunit.sourceforge.net.
[6]
T. Xie. Augmenting automatically generated unit-test suites with regression oracle checking. In Proc. 20th European Conference on Object-Oriented Programming, pages 380--403, 2006.

Cited By

View all
  • (2023)Dynamic Human-in-the-Loop Assertion GenerationIEEE Transactions on Software Engineering10.1109/TSE.2022.321754449:4(2337-2351)Online publication date: 1-Apr-2023
  • (2022)Automated assertion generation via information retrieval and its integration with deep learningProceedings of the 44th International Conference on Software Engineering10.1145/3510003.3510149(163-174)Online publication date: 21-May-2022
  • (2021)How Developers Engineer Test Cases: An Observational StudyIEEE Transactions on Software Engineering10.1109/TSE.2021.3129889(1-1)Online publication date: 2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
eclipse '07: Proceedings of the 2007 OOPSLA workshop on eclipse technology eXchange
October 2007
79 pages
ISBN:9781605580159
DOI:10.1145/1328279
Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 October 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. developer testing
  2. test code reuse

Qualifiers

  • Research-article

Conference

OOPSLA07
Sponsor:

Acceptance Rates

Overall Acceptance Rate 38 of 79 submissions, 48%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Dynamic Human-in-the-Loop Assertion GenerationIEEE Transactions on Software Engineering10.1109/TSE.2022.321754449:4(2337-2351)Online publication date: 1-Apr-2023
  • (2022)Automated assertion generation via information retrieval and its integration with deep learningProceedings of the 44th International Conference on Software Engineering10.1145/3510003.3510149(163-174)Online publication date: 21-May-2022
  • (2021)How Developers Engineer Test Cases: An Observational StudyIEEE Transactions on Software Engineering10.1109/TSE.2021.3129889(1-1)Online publication date: 2021
  • (2020)An Empirical Analysis of Blind Tests2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST)10.1109/ICST46399.2020.00034(254-262)Online publication date: Oct-2020
  • (2018)AppFlow: using machine learning to synthesize robust, reusable UI testsProceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3236024.3236055(269-282)Online publication date: 26-Oct-2018
  • (2015)Software test-code engineering: A systematic mappingInformation and Software Technology10.1016/j.infsof.2014.06.00958(123-147)Online publication date: Feb-2015
  • (2014)Transferring an automated test generation tool to practiceProceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering10.1145/2642937.2642941(385-396)Online publication date: 15-Sep-2014
  • (2013)The synergy of human and artificial intelligence in software engineering2013 2nd International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering (RAISE)10.1109/RAISE.2013.6615197(4-6)Online publication date: May-2013
  • (2013)On Adequacy of Assertions in Automated Test SuitesProceedings of the 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation Workshops10.1109/ICSTW.2013.49(382-391)Online publication date: 18-Mar-2013
  • (2012)State coverageProceedings of the 38th international conference on Current Trends in Theory and Practice of Computer Science10.1007/978-3-642-27660-6_44(542-553)Online publication date: 21-Jan-2012
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media