skip to main content
research-article

Data-flow testing of declarative programs

Published:20 September 2008Publication History
Skip Abstract Section

Abstract

We propose a novel notion of data-flow coverage for testing declarative programs. Moreover, we extend an automatic test-case generator such that it can achieve data-flow coverage. The coverage information is obtained by instrumenting a program such that it collects coverage information during its execution. Finally, we show the benefits of data-flow based testing for a couple of example applications.

Skip Supplemental Material Section

Supplemental Material

Video

References

  1. Elvira Albert, Miguel Gómez-Zamalloa, Laurent Hubert, and Germán Puebla. Verification of Java bytecode using analysis and transformation of logic programs. In Proc. PADL, LNCS 4354, pages 124--139, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. B. Beizer. Black-Box Testing. Wiley, 1995.Google ScholarGoogle Scholar
  3. Olaf Chitil, Colin Runciman, and Malcolm Wallace. Transforming Haskell for tracing. In Ricardo Pena and Thomas Arts, editors, Implementation of Functional Languages: 14th International Workshop, IFL 2002, LNCS 2670, pages 165--181, March 2003. ISBN 3-540-40190-3. URL http://www.cs.kent.ac.uk/pubs/2003/1770. Madrid, Spain, 16-18 September 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Jan Christiansen and Sebastian Fischer. EasyCheck -- test data for free. In FLOPS '08: Proceedings of the 9th International Symposium on Functional and Logic Programming. Springer LNCS 4989, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Koen Claessen and John Hughes. Quickcheck: a lightweight tool for random testing of Haskell programs. In Proc. ICFP, pages 268--279, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. T.H. Cormen, C.E. Leiserson, and R.L. Rivest. Introduction to Algorithms. McGraw Hill, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Sebastian Fischer and Herbert Kuchen. Systematic generation of glass-box test cases for functional logic programs. In Proc. of the 9th International ACM SIGPLAN Symposium on Principles and Practice of Declarative Programming (PPDP 2007), pages 75--89. ACM Press, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Andy Gill and Colin Runciman. Haskell program coverage. In Haskell '07: Proceedings of the ACM SIGPLAN workshop on Haskell workshop, pages 1--12, New York, NY, USA, 2007. ACM. ISBN 978-1-59593-674-5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Hanus et al. Curry: An integrated functional logic language (version 0.8.2). Available at URL http://www.informatik.uni-kiel.de/~curry, 2006.Google ScholarGoogle Scholar
  10. Pieter W. M. Koopman, Artem Alimarine, Jan Tretmans, and Marinus J. Plasmeijer. Gast: Generic automated software testing. In Proc. IFL, LNCS 2670, pages 84--100, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. H. Kuchen and S. Fischer. CyTest benchmarks web pages. URL http://danae.uni-muenster.de/lehre/kuchen/ICFP08/, 2008.Google ScholarGoogle Scholar
  12. Fredrik Lindblad, Matthew Naylor, and Colin Runciman. A logic programming library for test-data generation. Available at http://www-users.cs.york.ac.uk/~mfn/lazysmallcheck/, 2007.Google ScholarGoogle Scholar
  13. Roger A. Müller, Christoph Lembeck, and Herbert Kuchen. A symbolic Java virtual machine for test-case generation. In IASTED Conf. on Software Engineering, pages 365--371, 2004.Google ScholarGoogle Scholar
  14. N. Mweze andW. Vanhoof. Automatic generation of test inputs for Mercury programs. In Proc. LOPSTR, 2006.Google ScholarGoogle Scholar
  15. Matthew Naylor. A logic programming library for test-data generation. Available at http://www-users.cs.york.ac.uk/~mfn/sparsecheck/, 2007.Google ScholarGoogle Scholar
  16. S. Peyton Jones, editor. Haskell 98 Language and Libraries-The Revised Report. Cambridge University Press, 2003.Google ScholarGoogle Scholar
  17. F. Rabhi and G. Lapalme. Algorithms -- A Functional Programming Approach. Addison Wesley, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Don Stewart and Spencer Sjanssen. Xmonad. In Haskell '07: Proceedings of the ACM SIGPLAN workshop on Haskell workshop, pages 119--119, New York, NY, USA, 2007. ACM. ISBN 978-1-59593-674-5. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Data-flow testing of declarative programs

    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

    Full Access

    • Published in

      cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 43, Issue 9
      ICFP '08
      September 2008
      399 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/1411203
      Issue’s Table of Contents
      • cover image ACM Conferences
        ICFP '08: Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
        September 2008
        422 pages
        ISBN:9781595939197
        DOI:10.1145/1411204

      Copyright © 2008 ACM

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 20 September 2008

      Check for updates

      Qualifiers

      • research-article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!