MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  [Information Interfaces and Presentation]: User Interfaces—ergonomics,

Download:
Download as a PDF
unknown authors
http://www.cc.gatech.edu/~yannis/cnc-final.pdf
Add To MetaCart

Abstract:

We present an automatic error-detection approach that combines static checking and concrete test-case generation. Our approach consists of taking the abstract error conditions inferred using theorem proving techniques by a static checker (ESC/Java), deriving specific error conditions using a constraint solver, and producing concrete test cases (with the JCrasher tool) that are executed to determine whether an error truly exists. The combined technique has advantages over both static checking and automatic testing individually. Compared to ESC/Java, we eliminate spurious warnings and improve the ease-of-comprehension of error reports through the production of Java counterexamples. Compared to JCrasher, we eliminate the blind search of the input space, thus reducing the testing time and increasing the test quality.

Citations

453 Points-to analysis in almost linear time – Steensgaard - 1996
356 Dynamically discovering likely program invariants to support program evolution – Ernst, Cockrell, et al. - 2001
309 Extended static checking for Java – Flanagan, Leino, et al. - 2002
249 Preliminary design of JML: A behavioral interface specification language for Java – Leavens, Baker, et al. - 1998
189 Simplify: A theorem prover for program checking – Detlefs, Nelson, et al. - 2003
149 Korat: Automated testing based on Java predicates – Boyapati, Khurshid, et al. - 2002
149 A system and language for building system-specific, static analyses – Hallem, Chelf, et al. - 2002
120 Test infected: Programmers love writing tests – Beck, Gamma - 1998
95 Finding bugs is easy – Hovemeyer, Pugh - 2004
92 ESC/Java user’s manual – Leino, Nelson, et al. - 2000
85 an annotation assistant for esc/java – Houdini - 2001
76 Finding bugs with a constraint solver – Jackson, Vaziri - 2000
49 Generating Tests from Counterexamples – Beyer, Chlipala, et al. - 2004
36 ESC/Java2: Uniting ESC/Java and JML: Progress and issues in building and using ESC/Java2 and a report on a case study involving the use of ESC/Java2 to verify portions of an Internet voting tally system – Cok, Kiniry - 2004
33 A comparison of bug finding tools for Java – Rutar, Almazan, et al. - 2004
33 Tool-assisted unit test selection based on operational violations – Xie, Notkin - 2003
26 Z-Ranking: Using statistical analysis to counter the impact of static analysis approximations – Kremenek, Engler - 2003
15 An informal formal method for systematic junit test case generation – Stotts, Lindsey, et al. - 2002
11 Counterexample guided abstraction refinement via program execution – Kroening, Groce, et al. - 2004
11 POOC: A platform for object-oriented constraint programming – Schlenker, Ringwelski - 2002
9 Java development with Ant – Hatcher, Loughran - 2002
8 Some lessons from using static analysis and software model checking for bug finding – MUSUVATHI, ENGLER - 2003