• DocumentCode
    2601753
  • Title

    TestEra: A tool for testing Java programs using alloy specifications

  • Author

    Khalek, Shadi Abdul ; Yang, Guowei ; Zhang, Lingming ; Marinov, Darko ; Khurshid, Sarfraz

  • Author_Institution
    Electr. & Comput. Eng., Univ. of Texas at Austin, Austin, TX, USA
  • fYear
    2011
  • fDate
    6-10 Nov. 2011
  • Firstpage
    608
  • Lastpage
    611
  • Abstract
    This tool paper presents an embodiment of TestEra - a framework developed in previous work for specification-based testing of Java programs. To test a Java method, TestEra uses the method´s pre-condition specification to generate test inputs and the post-condition to check correctness of outputs. TestEra supports specifications written in Alloy - a first-order, declarative language based on relations - and uses the SAT-based back-end of the Alloy tool-set for systematic generation of test suites. Each test case is a JUnit test method, which performs three key steps: (1) initialization of pre-state, i.e., creation of inputs to the method under test; (2) invocation of the method; and (3) checking the correctness of post-state, i.e., checking the method output. The tool supports visualization of inputs and outputs as object graphs for graphical illustration of method behavior. TestEra is available for download to be used as a library or as an Eclipse plug-in.
  • Keywords
    Java; graphs; program testing; specification languages; Alloy tool-set; Eclipse plug-in; JUnit test method; Java program testing; SAT-based backend; TestEra; alloy specification; declarative language; graphical illustration; object graph; specification-based testing; Java; Libraries; Metals; Receivers; Software engineering; Systematics; Testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering (ASE), 2011 26th IEEE/ACM International Conference on
  • Conference_Location
    Lawrence, KS
  • ISSN
    1938-4300
  • Print_ISBN
    978-1-4577-1638-6
  • Type

    conf

  • DOI
    10.1109/ASE.2011.6100137
  • Filename
    6100137