Writing Larch interface language specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Trace Specifications: Methodology and Models
IEEE Transactions on Software Engineering
Using Larch to Specify Avalon/C++ Objects
IEEE Transactions on Software Engineering
The ASTOOT approach to testing object-oriented programs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Daistish: systematic algebraic testing for OO programs in the presence of side-effects
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Data Abstraction, Implementation, Specification, and Testing
ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstract data types and software validation
Communications of the ACM
The Larch Family of Specification Languages
IEEE Software
Notes on Type Abstraction (Version 2)
IEEE Transactions on Software Engineering
Rostra: A Framework for Detecting Redundant Object-Oriented Unit Tests
Proceedings of the 19th IEEE international conference on Automated software engineering
JCrasher: an automatic robustness tester for Java
Software—Practice & Experience
Check 'n' crash: combining static checking and testing
Proceedings of the 27th international conference on Software engineering
Testing in resource constrained execution environments
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Automatic extraction of abstract-object-state machines from unit-test executions
Proceedings of the 28th international conference on Software engineering
Delta execution for efficient state-space exploration of object-oriented programs
Proceedings of the 2007 international symposium on Software testing and analysis
A probabilistic alternative to regression suites
Theoretical Computer Science
The axioms strike back: testing with concepts and axioms in C++
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
DiffGen: Automated Regression Unit-Test Generation
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Where do unit tests come from?
XP'03 Proceedings of the 4th international conference on Extreme programming and agile processes in software engineering
Optimized execution of deterministic blocks in java pathfinder
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Testing with guarantees and the failure of regression testing in extreme programming
XP'05 Proceedings of the 6th international conference on Extreme Programming and Agile Processes in Software Engineering
Eclat: automatic generation and classification of test inputs
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Augmenting automatically generated unit-test suites with regression oracle checking
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Trustworthy instantiation of frameworks
Proceedings of the 2004 international conference on Architecting Systems with Trustworthy Components
Hi-index | 0.00 |
The JUnit testing tool is widely used to support the central XP concept of "test first" software development. While JUnit provides Java classes for expressing test cases and test suites, it does not provide or proscribe per se any guidelines for deciding what test cases are good ones for any particular class. We have developed a method for systematically creating complete and consistent test classes for JUnit. Called JAX (for Junit Axioms), the method is based on Guttag's algebraic specification of abstract data types. We demonstrate an informal use of ADT semantics for guiding JUnit test method generation; the programmer uses no formal notation other than Java, and the procedure meshes with XP test-as-design principles. Preliminary experiments show that informal JAX-based testing finds more errors than an ad hoc form of JUnit testing.