Skip to main content

Identifying Data Member Level Changes for Regression Testing of Object-Oriented Programs

  • Chapter
  • 502 Accesses

Part of the book series: Studies in Computational Intelligence ((SCI,volume 253))

Summary

Regression testing is a fundamental activity in both testing and maintenance phases. When a piece of software is modified, it is considered necessary to make sure that the quality of the software is still preserved. One important problem in regression testing is to identify those changes that can change program runtime behavior. Object-oriented paradigm experiences this problem quite often because slight change in program can result in changed runtime behavior. Changes in data member can cause changed runtime behavior but techniques proposed till now do not focus on them. In this paper, we identify changes at data member level that can potentially cause change in runtime behavior in object-oriented programs. We have proposed a technique for object-oriented programs to identify changes in data members. Our technique uses extended control flow graphs to find changes in programs written in Java language.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Roger, P.: Software Engineering: A Practitioner’s Approach, 6th edn., pp. 721–746. McGraw-Hill, New York (2004)

    Google Scholar 

  2. Myers, G.: The Art of Software Testing. John Wiley & Sons, Inc., New York (1979)

    Google Scholar 

  3. Robert, B.: Testing Object-Oriented Systems: Models, Patterns and Tools, 1st edn., pp. 755–799. Addison-Wesley Professional, Reading (1999)

    Google Scholar 

  4. Ye, W., Mei, C., Howard, K.: Regression Testing on Object-Oriented Programs. In: Issre, 10th International Symposium on Software Reliability Engineering, p. 270 (1999)

    Google Scholar 

  5. David, K., Jerry, G., Pei, H.: Class Firewall, Test Order, and Regression Testing of Object-Oriented Programs Testing of Object-Oriented Programs. Journal of Object-Oriented Programming, 51–65 (1995)

    Google Scholar 

  6. Susan, H.: Identifying the semantic and textual differences between two versions of a program. In: PLDI 1990: Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation (1990)

    Google Scholar 

  7. Yang, W.: Identifying syntactic differences between two programs. Software - Practice and Experience 21(7), 739–755 (1991)

    Article  Google Scholar 

  8. David, K., Jerry, G., Pei, H., Yasufumi, T., Cris, C.: On regression testing of object-oriented programs. Journal of Systems and Software 32(1), 21–40 (1996)

    Article  Google Scholar 

  9. Gregg, R., Mary, H.: A Safe, Efficient Regression Test Selection Technique. ACM Transactions on Software Engineering and Methodology (TOSEM) 6(2), 173–210 (1997)

    Article  Google Scholar 

  10. David, B.: Semantics Guided Regression Test Cost Reduction. IEEE Trans. Software Eng. 23(9) (1997)

    Google Scholar 

  11. Filippos, V., Phyllis, F.: Empirical Evaluation of the Textual Differencing Regression Testing Technique. In: Proceedings of the International Conference on Software Maintenance, March 16-19, p. 44 (1998)

    Google Scholar 

  12. Filippos, V., Phyllis, F.: Pythia: A regression test selection tool based on textual differencing. In: Proceedings of the 3rd International Conference on Reliability, Quality & Safety of Software-Intensive Systems (ENCRESS 1997) (May 1997)

    Google Scholar 

  13. Jang, K., Munro, M., Kwon, Y.R.: An improved method of selecting regression tests for C++ programs. In: Department of Electronic Engineering and Computer Science, Korea Advanced Institute of Science and Technology, Kusong-dong, Yusong-gu, Taejon, Korea, vol. 373-1, pp. 305–701

    Google Scholar 

  14. Shruti, R., Rosanne, R., David, L., Andy, P., Vinay, A.: Dex: A Semantic-Graph Differencing Tool for Studying Changes in Large Code Bases. In: Proceedings of the 20th IEEE International Conference on Software Maintenance, September 11-14, 2004, pp. 188–197 (2004)

    Google Scholar 

  15. Alessandro, O., Nanjuan, S., Mary, H.: Scaling regression testing to large software systems. In: Proceedings of the ACM SIGSOFT Symposium on the Foundations of Software Engineering, Newport Beach, CA (October 2004)

    Google Scholar 

  16. Taweesup, A., Alessandro, O., Mary, H.: JDiff: A Differencing Technique and Tool for Object-Oriented Programs. Automated Software Engineering 14(1), 3–36 (2007)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Manzoor, S., Nadeem, A. (2009). Identifying Data Member Level Changes for Regression Testing of Object-Oriented Programs. In: Lee, R., Ishii, N. (eds) Software Engineering Research, Management and Applications 2009. Studies in Computational Intelligence, vol 253. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-05441-9_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-05441-9_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-05440-2

  • Online ISBN: 978-3-642-05441-9

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics