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

skip to main content
10.1145/3341525.3393972acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
poster

Automatic Test Generation for Haskell Programming Assignments

Published: 15 June 2020 Publication History

Abstract

Automatic testing of programming assignments is highly desirable as it can provide fast feedback for the students and allows the teachers to teach efficiently even in courses with many students. However, writing tests for students' solutions can be tedious. In this work, we present a novel approach to test generation for small Haskell assignments. Such assignments usually consist of one function (with the possibility to use helper functions in its definition) that the students are supposed to program according to a teacher's specification. The teacher is not required to write tests for this function. Instead, we make use of an example solution, which the teacher should have to assess the difficulty of the assignment. Using the example solution, and (if needed) a specification of input values for the function, our tool can automatically generate randomized tests. If these tests fail, the student is presented with a counterexample which shows the input values, the expected output of the tested function and the output computed by their solution.

References

[1]
Koen Claessen. 2012. Shrinking and Showing Functions: (Functional Pearl). In Proceedings of the 2012 Haskell Symposium (Copenhagen, Denmark) (Haskell '12). Association for Computing Machinery, New York, NY, USA, 73--80. https://doi.org/10.1145/2364506.2364516
[2]
Koen Claessen and John Hughes. 2000. QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs. Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP, Vol. 46 (01 2000). https://doi.org/10.1145/1988042.1988046

Index Terms

  1. Automatic Test Generation for Haskell Programming Assignments

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ITiCSE '20: Proceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education
    June 2020
    615 pages
    ISBN:9781450368742
    DOI:10.1145/3341525
    Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 15 June 2020

    Check for updates

    Author Tags

    1. Haskell
    2. QuickCheck
    3. automatic testing
    4. programming education

    Qualifiers

    • Poster

    Conference

    ITiCSE '20
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 552 of 1,613 submissions, 34%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • 0
      Total Citations
    • 100
      Total Downloads
    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 27 Nov 2024

    Other Metrics

    Citations

    View Options

    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