Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/337180.337197acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article
Free access

Testing levels for object-oriented software

Published: 01 June 2000 Publication History

Abstract

One of the characteristics of object-oriented software is the complex dependency that may exist between classes due to inheritance, association and aggregation relationships. Hence, where to start testing and how to define an integration strategy are issues that require further investigation. This paper presents an approach to define a test order by exploiting a model produced during design stages (e.g., using OMT, UML), namely the class diagram. Our goal is to minimize the number of stubs to be constructed in order to decrease the cost of testing. This is done by testing a class after the classes it depends on. The novelty of the test order lies in the fact that it takes account of: (i) dynamic (polymorphism) dependencies; (ii) abstract classes that cannot be instantiated, making some testing levels infeasible. The test order is represented by a graph showing which testing levels must be done in sequence and which ones may be done independently. It also provides information about the classes involved in each level and how they are involved (e.g., instantiation or not). The approach is implemented in a tool called TOONS (Testing level generator for Object-OrieNted Software). It is applied to an industrial case study from the avionics domain.

References

[1]
B. Beizer, Software Testing Techniques, Van Nostrand Reinhold, New York, 2nd Ed., 1990.]]
[2]
R. V. Binder, "Testing Object-Oriented Software: a Survey," Software Testing, Verification & Reliability, vol. 6 (3/4), pp. 125-252, 1996.]]
[3]
R.-K. Doong and P. G. Frankl, "The ASTOOT Approach to Testing Object-Oriented Programs," ACM Trans. on Software Engineering and Methodology, vol. 3 (2), pp. 101-130, 1994.]]
[4]
M. J. Harrold, J. D. McGregor and K. J. Fitzpatrick, "Incremental Testing of Object-Oriented Class Structures," in Proc. 14th IEEE Int. Conf. on Software Engineering (ICSE-14), (Melbourne, Australia), pp. 68-80, 1992.]]
[5]
T. J~ron, J.-M. J~z~quel, Y. Le Traon and P. Morel, "Efficient Strategies for Integration and Regression Testing of OO Systems," in Proc. 10th Int. Symposium on Software Reliability Engineering (ISSRE'99), (Boca Raton, USA), pp. 260-269, 1999.]]
[6]
P. C. Jorgensen and C. Erickson, "Object-Oriented Integration Testing," Communications of the ACM, vol. 37 (9), pp. 30-38, 1994.]]
[7]
D. Kung, J. Gao, P. Hsia, J. Lin and Y. Toyoshima, "Class Firewall, test order, and regression testing of object-oriented programs," Journal of Object-Oriented Programming, vol. 8 (2), pp. 51-65, 1995.]]
[8]
D. Kung, J. Gao, P. Hsia, Y. Toyoshima, Chen, Y. Kim and Y. Song, "Developing an Object-Oriented Software Testing and Maintenance Environment," Communications of the ACM, vol. 38 (10), pp. 75-87, 1995.]]
[9]
D. Kung, P. Hsia and J. Gao (Eds), Testing Object-Oriented Software, IEEE Computer Society, 1998.]]
[10]
J. Mc Gregor, "Let's Don't and Say We Did," Journal of Object-Oriented Programming, vol. 11 (5), pp. 6- 11,14, 1998.]]
[11]
A. S. Parrish, R. B. Borie and D. W. Cordes, "Automated Flow Graph-Based Testing of Object-Oriented Software Modules," Journal of Systems and Software, vol. 23 (2), pp. 95-109, 1993.]]
[12]
K.-C. Tai and F. J. Daniels, "Interclass Test Order for Object-Oriented Software," Journal of Object-Oriented Programming, vol. 12 (4), pp. 18-25,35, 1999.]]
[13]
P. Th~venod-Fosse and H. Waeselynck, "Towards a Statistical Approach to Testing Object-Oriented Programs," in Proc. 27th IEEE Annual Int. Symp. on Fault-Tolerant Computing (FTCS-27), (Seattle, USA), pp. 99-108, 1997.]]
[14]
C. D. Turner and D. J. Robson, "The State-Based Testing of Object-Oriented Programs," in Proc. IEEE Conf. on Software Maintenance, (Los Almitos, USA), pp. 302-310, 1993.]]
[15]
H. Waeselynck and P. Th~venod-Fosse, "A Case Study in Statistical Testing of Reusable Concurrent Objects," in Proc. 3rd European Dependable Computing Conf. (EDCC-3), 1667, pp. 401-418, 1999.]]

Cited By

View all
  • (2024)Elevating Software Quality in Agile Environments: The Role of Testing Professionals in Unit Testing2024 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)10.1109/ICSTW60967.2024.00058(293-296)Online publication date: 27-May-2024
  • (2023)Progress on class integration test order generation approachesInformation and Software Technology10.1016/j.infsof.2022.107133156:COnline publication date: 1-Apr-2023
  • (2023)A class integration test order generation approach based on Sarsa algorithmAutomated Software Engineering10.1007/s10515-023-00406-931:1Online publication date: 13-Dec-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '00: Proceedings of the 22nd international conference on Software engineering
June 2000
843 pages
ISBN:1581132069
DOI:10.1145/337180
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: 01 June 2000

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. abstract classes
  2. integration strategy
  3. object-oriented oftware
  4. polymorphism
  5. test order
  6. tool

Qualifiers

  • Article

Conference

ICSE00
Sponsor:

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)105
  • Downloads (Last 6 weeks)17
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Elevating Software Quality in Agile Environments: The Role of Testing Professionals in Unit Testing2024 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)10.1109/ICSTW60967.2024.00058(293-296)Online publication date: 27-May-2024
  • (2023)Progress on class integration test order generation approachesInformation and Software Technology10.1016/j.infsof.2022.107133156:COnline publication date: 1-Apr-2023
  • (2023)A class integration test order generation approach based on Sarsa algorithmAutomated Software Engineering10.1007/s10515-023-00406-931:1Online publication date: 13-Dec-2023
  • (2023)A Reinforcement Learning Method for Generating Class Integration Test Orders Considering Dynamic CouplingsNeural Information Processing10.1007/978-981-99-8082-6_8(95-107)Online publication date: 15-Nov-2023
  • (2021)A cost-effective adaptive random testing algorithm for object-oriented software testingJournal of Intelligent & Fuzzy Systems10.3233/JIFS-189701(1-9)Online publication date: 8-Mar-2021
  • (2020)An Approach to Determine the Optimal k-Value of K-means Clustering in Adaptive Random Testing2020 IEEE 20th International Conference on Software Quality, Reliability and Security (QRS)10.1109/QRS51102.2020.00032(160-167)Online publication date: Dec-2020
  • (2019)IntegrationDistiller: Automating Integration Analysis and Testing of Object-Oriented Applications2019 IEEE International Conference on Industrial Technology (ICIT)10.1109/ICIT.2019.8755027(1385-1392)Online publication date: Feb-2019
  • (2015)An approach of class integration test order determination based on test levelsSoftware—Practice & Experience10.1002/spe.226045:5(657-687)Online publication date: 1-May-2015
  • (2012)A Genetic Algorithm for Computing Class Integration Test Orders for Aspect-Oriented SystemsProceedings of the 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation10.1109/ICST.2012.179(804-813)Online publication date: 17-Apr-2012
  • (2011)Integration testing object-oriented software systems: An experiment-driven research approach2011 24th Canadian Conference on Electrical and Computer Engineering(CCECE)10.1109/CCECE.2011.6030533(000652-000655)Online publication date: May-2011
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media