skip to main content
10.1145/229000.226312acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
Article
Free Access

Unconstrained duals and their use in achieving all-uses coverage

Authors Info & Claims
Published:01 May 1996Publication History

ABSTRACT

Testing takes a considerable amount of the time and resources spent on producing software. It would therefore be useful to have ways 1) to reduce the cost of testing and 2) to estimate this cost. In particular, the number of tests to be executed is an important and useful attribute of the entity "testing effort". All-uses coverage is a data flow testing strategy widely researched in recent years. In this paper we present spanning sets of duas for the all-uses coverage criterion. A spanning set of duas is a minimum set of duas (definition-use associations) such that a set of test paths covering them covers every dua in the program. We give a method to find a spanning set of duas using the relation of subsumption between duas. Intuitively, there exists a natural ordering between the duas in a program: some duas are covered more easily than others, since coverage of the former is automatically guaranteed whenever the latter are covered. Those duas that are the most difficult to be covered according to this ordering are called unconstrained. A spanning set of duas is composed of unconstrained duas. Our results are useful for reducing the cost of testing, since the generation of test paths can be targeted to cover the smaller spanning set of duas, rather than all those in a program. On the other hand, assuming that a different path is taken to cover each dua in a spanning set, the cardinality of spanning sets can be used to estimate the cost of testing. Other interesting uses of spanning sets of duas are also discussed.

References

  1. 1.B. Beizer. Software Testing Techniques, Second Edition. Van Nostrand Reinhold, New York, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.C. Berge. Graphs and Hypergraphs. North-Holland, New York, 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.A. Bertolino and M. MarrY. How many paths are needed for branch testing? The Journal of Systems and Software, 1996. To appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.A. Bertolino and M. MarrY. Automatic generation of path covers based on the control flow analysis of computer programs. IEEE Trans. on Software Engineering, SE-20(12):885-899, December 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.A. Bertolino, R. Mirandola, and E. Peciola. A case study in branch testing automation. In Proc. of the 3rd Int. Conf. on Achieving Quality in Software (.4 QulS'96). To appear.Google ScholarGoogle Scholar
  6. 6.P. G. Frankl and S. N. Weiss. An experimental comparison of the effectiveness of branch testing and data flow testing. IEEE Trans. on Software Engineering, 19(8):774-787, August 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.P. G. Frankl and E. J. Weyuker. An applicable family of data flow testing criteria. IEEE Trans. on Software Engsneering, 14(10):1483-1498, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8.R. Gupta and M. L. Sofia. Employing static information in the generation of test cases. Software Testing, Verification and Reliability, 3(1):29-48, 1993.Google ScholarGoogle ScholarCross RefCross Ref
  9. 9.M.J. Harrold, R. Gupta, and M. L. Sofia. A methodology for controlling the size of a test suite. A CM Trans. on Software Engineering and Methodology, 2(3):270- 285, July 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10.M. S. Hecht. Flow Analysis of Computer Programs. North Holland, New York, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11.M. Hutchins, H. Foster, T. Goradia, and T. Ostrend. Experiments on the effectiveness of dataflowand controlflow- based test adequacy criteria. Proc. 16th. Int. Conf. on Soft. Eng. (ICSE 9J), pages 191- 200, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.B. Korel. Automated software test data generation. IEEE Trans. on Software Engineering, 16(8):870-879, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13.T. Lengauer and R. E. Tarjan. A fast algorithm for finding dominators in a flowgraph. A CM Trans. on Programming Languages and Systems, 1(1):121-141, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.M. MarrY. Program Flow Analysis for Reducing and Estimating the Cost of Test Coverage Criteria. PhD thesis, Dep. Computer Science, FCEyN, Universidad de Buenos Aires, 1996.Google ScholarGoogle Scholar
  15. 15.E. F. Miller. Software testing technology: An overview. In C. R. Vick and C. V. Ramamoorthy, editors, Handbook of Software Engineering. Van Nostrand Reinhold, New York, 1984.Google ScholarGoogle Scholar
  16. 16.S. Rapps and E.J. Weyuker. Selecting software test data using data flow information. IEEE Trans. on Software Engineering, SE-11(4):367-375, April 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.E. Weyuker. The cost of data flow testing: An empirical study. IEEE Trans. on Software Engineering, 16(2):121-128, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 18.E. J. Weyuker. The complexity of dat~ flow criteria for test data selection. Information Processing Letters, 19(2):103-109, August 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19.W. E. Wong, J. R. Horgan, S. London, and A. P. Mathur. Effect of test set minimization on fault detection effectiveness. In Proc. of the 17th Int. Conf. on Software Engineering (iCSE 95), pages 41-50, April 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20.D. F. Yates and N. Malevris. Reducing the effects of infeasible paths in branch testing. A CM SIGSOFT Software Engineering Notes, 14(8):48-54, Dec. 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Unconstrained duals and their use in achieving all-uses coverage

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        ISSTA '96: Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
        May 1996
        294 pages
        ISBN:0897917871
        DOI:10.1145/229000

        Copyright © 1996 ACM

        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]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 May 1996

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        Overall Acceptance Rate58of213submissions,27%

        Upcoming Conference

        ISSTA '24

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader