Software testing techniques (2nd ed.)
Software testing techniques (2nd ed.)
Introduction to algorithms
The Z notation: a reference manual
The Z notation: a reference manual
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Model checking for programming languages using VeriSoft
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Solving shape-analysis problems in languages with destructive updating
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Unified Modeling Language reference manual
The Unified Modeling Language reference manual
A deadlock detection tool for concurrent Java programs
Software—Practice & Experience
Structural specification-based testing: automated support and experimental evaluation
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
The design and implementation of an intentional naming system
Proceedings of the seventeenth ACM symposium on Operating systems principles
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Alcoa: the alloy constraint analyzer
Proceedings of the 22nd international conference on Software engineering
The pointer assertion logic engine
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Finding bugs with a constraint solver
Proceedings of the 2000 ACM SIGSOFT international symposium on Software testing and analysis
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Symbolic Model Checking
Program Development in Java: Abstraction, Specification, and Object-Oriented Design
Program Development in Java: Abstraction, Specification, and Object-Oriented Design
Improving Software Tests Using Z Specifications
ZUM '95 Proceedings of the 9th International Conference of Z Usres on The Z Formal Specification Notation
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Toward a theory of test data selection
Proceedings of the international conference on Reliable software
TestEra: A Novel Framework for Automated Testing of Java Programs
Proceedings of the 16th IEEE international conference on Automated software engineering
Specifying and Testing Software Components using ADL
Specifying and Testing Software Components using ADL
Generating tests from UML specifications
UML'99 Proceedings of the 2nd international conference on The unified modeling language: beyond the standard
The UniTesK Approach to Designing Test Suites
Programming and Computing Software
Generating Tests from Counterexamples
Proceedings of the 26th International Conference on Software Engineering
Test input generation with java PathFinder
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Evolutionary testing of classes
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Software assurance by bounded exhaustive testing
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
TestEra: Specification-Based Testing of Java Programs Using SAT
Automated Software Engineering
Experiences evaluating the effectiveness of JML-JUnit testing
ACM SIGSOFT Software Engineering Notes
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
Automatic discovery of API-level exploits
Proceedings of the 27th international conference on Software engineering
Check 'n' crash: combining static checking and testing
Proceedings of the 27th international conference on Software engineering
DART: directed automated random testing
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
How the design of JML accommodates both runtime assertion checking and formal verification
Science of Computer Programming - Formal methods for components and objects pragmatic aspects and applications
Software Assurance by Bounded Exhaustive Testing
IEEE Transactions on Software Engineering
Relational analysis of algebraic datatypes
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Parameterized unit tests with unit meister
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
CUTE: a concolic unit testing engine for C
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Environment behavior models for scenario generation and testing automation
A-MOST '05 Proceedings of the 1st international workshop on Advances in model-based testing
Combining test case generation and runtime verification
Theoretical Computer Science - Abstract state machines and high-level system design and analysis
Test input generation for red-black trees using abstraction
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Generalizing symbolic execution to library classes
PASTE '05 Proceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Integrating automated test generation into the WYSIWYT spreadsheet testing methodology
ACM Transactions on Software Engineering and Methodology (TOSEM)
Automatic extraction of abstract-object-state machines from unit-test executions
Proceedings of the 28th international conference on Software engineering
Tool support for randomized unit testing
Proceedings of the 1st international workshop on Random testing
Test input generation for java containers using state matching
Proceedings of the 2006 international symposium on Software testing and analysis
Modular verification of code with SAT
Proceedings of the 2006 international symposium on Software testing and analysis
Inference and enforcement of data structure consistency specifications
Proceedings of the 2006 international symposium on Software testing and analysis
DSD-Crasher: a hybrid analysis tool for bug finding
Proceedings of the 2006 international symposium on Software testing and analysis
Efficient software model checking of data structure properties
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Software partitioning for effective automated unit testing
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
Carving differential unit test cases from system test cases
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Compositional dynamic test generation
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Statistical Debugging: A Hypothesis Testing-Based Approach
IEEE Transactions on Software Engineering
Using GUI Run-Time State as Feedback to Generate Test Cases
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Korat: A Tool for Generating Structurally Complex Test Inputs
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Formal Software Analysis Emerging Trends in Software Model Checking
FOSE '07 2007 Future of Software Engineering
Improving Fault Detection Capability by Selectively Retaining Test Cases during Test Suite Reduction
IEEE Transactions on Software Engineering
Towards a Framework for Differential Unit Testing of Object-Oriented Programs
AST '07 Proceedings of the Second International Workshop on Automation of Software Test
Under-constrained execution: making automatic code destruction easy and scalable
Proceedings of the 2007 international symposium on Software testing and analysis
Delta execution for efficient state-space exploration of object-oriented programs
Proceedings of the 2007 international symposium on Software testing and analysis
Experimental assessment of random testing for object-oriented software
Proceedings of the 2007 international symposium on Software testing and analysis
Parallel test generation and execution with Korat
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Automated testing of refactoring engines
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Finding bugs efficiently with a SAT solver
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Contract driven development = test driven development - writing test cases
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Directed test generation using symbolic grammars
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Directed test generation using symbolic grammars
The 6th Joint Meeting on European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering: companion papers
Automated Software Engineering
Starc: static analysis for efficient repair of complex data
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Assertion-based repair of complex data structures
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Directed test generation using symbolic grammars
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
DSD-Crasher: A hybrid analysis tool for bug finding
ACM Transactions on Software Engineering and Methodology (TOSEM)
Automated test case generation from IFAD VDM++ specifications
SEPADS'05 Proceedings of the 4th WSEAS International Conference on Software Engineering, Parallel & Distributed Systems
ARTOO: adaptive random testing for object-oriented software
Proceedings of the 30th international conference on Software engineering
Incremental state-space exploration for programs with dynamically allocated data
Proceedings of the 30th international conference on Software engineering
Using JULE to generate a compliance test suite for the UML standard
Proceedings of the 30th international conference on Software engineering
Juzi: a tool for repairing complex data structures
Proceedings of the 30th international conference on Software engineering
Deryaft: a tool for generating representation invariants of structurally complex data
Proceedings of the 30th international conference on Software engineering
Grammar-based whitebox fuzzing
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Full functional verification of linked data structures
Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation
Search based software testing of object-oriented containers
Information Sciences: an International Journal
Efficient solving of structural constraints
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
Dynamic inference of likely data preconditions over predicates by tree learning
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
Automatic, evolutionary test data generation for dynamic software testing
Journal of Systems and Software
Automated Test Generation and Verified Software
Verified Software: Theories, Tools, Experiments
Automatic Testing of Object-Oriented Software
SOFSEM '07 Proceedings of the 33rd conference on Current Trends in Theory and Practice of Computer Science
State Isomorphism in Model Programs with Abstract Data Structures
FORTE '07 Proceedings of the 27th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
Efficient software model checking of soundness of type systems
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
A virtual environment for network testing
Journal of Network and Computer Applications
Using abstract models for the generation of test data with a complex structure
Programming and Computing Software
Automation of broad sanity test generation
Programming and Computing Software
Complementarity of Error Detection Techniques
Electronic Notes in Theoretical Computer Science (ENTCS)
Automatic generation of XSS and SQL injection attacks with goal-directed model checking
SS'08 Proceedings of the 17th conference on Security symposium
Whispec: white-box testing of libraries using declarative specifications
LCSD '07 Proceedings of the 2007 Symposium on Library-Centric Software Design
Reducing the Costs of Bounded-Exhaustive Testing
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Dynamic shape analysis via degree metrics
Proceedings of the 2009 international symposium on Memory management
WISE: Automated test generation for worst-case complexity
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Automatic system testing of programs without test oracles
Proceedings of the eighteenth international symposium on Software testing and analysis
Automatic Model Generation Strategies for Model Transformation Testing
ICMT '09 Proceedings of the 2nd International Conference on Theory and Practice of Model Transformations
Electronic Notes in Theoretical Computer Science (ENTCS)
Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
Increasing Test Granularity by Aggregating Unit Tests
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
DiffGen: Automated Regression Unit-Test Generation
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
JavaCOP: Declarative pluggable types for java
ACM Transactions on Programming Languages and Systems (TOPLAS)
An Incremental Approach to Scope-Bounded Checking Using a Lightweight Formal Method
FM '09 Proceedings of the 2nd World Congress on Formal Methods
An Empirical Study of Structural Constraint Solving Techniques
ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
Decision procedures for algebraic data types with abstractions
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Iterative execution-feedback model-directed GUI testing
Information and Software Technology
Experiments with test case generation and runtime analysis
ASM'03 Proceedings of the abstract state machines 10th international conference on Advances in theory and practice
Generating representation invariants of structurally complex data
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
Generalized symbolic execution for model checking and testing
TACAS'03 Proceedings of the 9th international conference on Tools and algorithms for the construction and analysis of systems
A framework for contract-based collaborative verification and validation of web services
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Using contracts and Boolean queries to improve the quality of automatic test generation
TAP'07 Proceedings of the 1st international conference on Tests and proofs
Generating unit tests from formal proofs
TAP'07 Proceedings of the 1st international conference on Tests and proofs
White-box testing by combining deduction-based specification extraction and black-box testing
TAP'07 Proceedings of the 1st international conference on Tests and proofs
Runtime checking for program verification
RV'07 Proceedings of the 7th international conference on Runtime verification
Integrating verification and testing of object-oriented software
TAP'08 Proceedings of the 2nd international conference on Tests and proofs
Formal methods and hybrid real-time systems
Test generation through programming in UDITA
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
Dynamic symbolic data structure repair
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Analysis of invariants for efficient bounded verification
Proceedings of the 19th international symposium on Software testing and analysis
OCAT: object capture-based automated testing
Proceedings of the 19th international symposium on Software testing and analysis
Parallel symbolic execution for structural test generation
Proceedings of the 19th international symposium on Software testing and analysis
Reverse-engineering drivers for safety and portability
HotDep'08 Proceedings of the Fourth conference on Hot topics in system dependability
Automatically generating predicates and solutions for configuration troubleshooting
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Eliminating products to test in a software product line
Proceedings of the IEEE/ACM international conference on Automated software engineering
Randomized constraint solvers: a comparative study
Innovations in Systems and Software Engineering
Efficient modular glass box software model checking
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Representation dependence testing using program inversion
Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering
Contract-based data structure repair using alloy
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Contract-driven testing of javascript code
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
Automatic generation of model checking scripts based on environment modeling
SPIN'10 Proceedings of the 17th international SPIN conference on Model checking software
Reducing combinatorics in testing product lines
Proceedings of the tenth international conference on Aspect-oriented software development
Unifying execution of imperative and declarative code
Proceedings of the 33rd International Conference on Software Engineering
Dynamic shape analysis of program heap using graph spectra (NIER track)
Proceedings of the 33rd International Conference on Software Engineering
Palus: a hybrid automated test generation tool for java
Proceedings of the 33rd International Conference on Software Engineering
Combined static and dynamic automated test generation
Proceedings of the 2011 International Symposium on Software Testing and Analysis
High coverage testing of Haskell programs
Proceedings of the 2011 International Symposium on Software Testing and Analysis
A specification-based test case generation method for UML/OCL
MODELS'10 Proceedings of the 2010 international conference on Models in software engineering
Incorporating coverage criteria in bounded exhaustive black box test generation of structural inputs
TAP'11 Proceedings of the 5th international conference on Tests and proofs
Android permissions demystified
Proceedings of the 18th ACM conference on Computer and communications security
PREFAIL: a programmable tool for multiple-failure injection
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Synthesizing method sequences for high-coverage testing
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Praspel: a specification language for contract-based testing in PHP
ICTSS'11 Proceedings of the 23rd IFIP WG 6.1 international conference on Testing software and systems
A dataflow analysis to improve SAT-based bounded program verification
SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
Controllable combinatorial coverage in grammar-based testing
TestCom'06 Proceedings of the 18th IFIP TC6/WG6.1 international conference on Testing of Communicating Systems
Jartege: a tool for random generation of unit tests for java classes
QoSA'05 Proceedings of the First international conference on Quality of Software Architectures and Software Quality, and Proceedings of the Second International conference on Software Quality
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Run your research: on the effectiveness of lightweight mechanization
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A theory of predicate-complete test coverage and generation
FMCO'04 Proceedings of the Third international conference on Formal Methods for Components and Objects
Optimized execution of deterministic blocks in java pathfinder
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Formal methods and testing: hypotheses, and correctness approximations
FM'05 Proceedings of the 2005 international conference on Formal Methods
Purity and side effect analysis for java programs
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
Symstra: a framework for generating object-oriented unit tests using symbolic execution
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Eclat: automatic generation and classification of test inputs
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Execution generated test cases: how to make systems code crash itself
SPIN'05 Proceedings of the 12th international conference on Model Checking Software
Repairing structurally complex data
SPIN'05 Proceedings of the 12th international conference on Model Checking Software
Formal testing for separation assurance
Annals of Mathematics and Artificial Intelligence
Automated boundary test generation from JML specifications
FM'06 Proceedings of the 14th international conference on Formal Methods
Dependable Systems
Interactive testing with HOL-TestGen
FATES'05 Proceedings of the 5th international conference on Formal Approaches to Software Testing
Augmenting automatically generated unit-test suites with regression oracle checking
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Safety property driven test generation from JML specifications
FATES'06/RV'06 Proceedings of the First combined international conference on Formal Approaches to Software Testing and Runtime Verification
Instantiation of parameterized data structures for model-based testing
B'07 Proceedings of the 7th international conference on Formal Specification and Development in B
Software model checking: searching for computations in the abstract or the concrete
IFM'05 Proceedings of the 5th international conference on Integrated Formal Methods
Behavioral interface specification languages
ACM Computing Surveys (CSUR)
Mixed constraints for test input generation - An initial exploration
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Automated documentation inference to explain failed tests
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
A model-driven framework for guided design space exploration
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Efficient and formal generalized symbolic execution
Automated Software Engineering
Proceedings of the 27th Annual ACM Symposium on Applied Computing
SMT-based enumeration of object graphs from UML class diagrams
ACM SIGSOFT Software Engineering Notes
History-Aware data structure repair using SAT
TACAS'12 Proceedings of the 18th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Sound empirical evidence in software testing
Proceedings of the 34th International Conference on Software Engineering
Amplifying tests to validate exception handling code
Proceedings of the 34th International Conference on Software Engineering
Dynamic constraint satisfaction problems over models
Software and Systems Modeling (SoSyM)
Improving the effectiveness of spectra-based fault localization using specifications
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
Puzzle-based automatic testing: bringing humans into the loop by solving puzzles
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
Using coverage criteria on RepOK to reduce bounded-exhaustive test suites
TAP'12 Proceedings of the 6th international conference on Tests and Proofs
Generation of test data structures using constraint logic programming
TAP'12 Proceedings of the 6th international conference on Tests and Proofs
Using models of partial knowledge to test model transformations
ICMT'12 Proceedings of the 5th international conference on Theory and Practice of Model Transformations
Specification-Driven test generation for model transformations
ICMT'12 Proceedings of the 5th international conference on Theory and Practice of Model Transformations
Predicate abstraction of Java programs with collections
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Scaling symbolic execution using ranged analysis
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Test input generation using dynamic programming
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Efficiently generating structurally complex inputs with thousands of objects
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
ACM SIGSOFT Impact Paper Award 2012: Systematic Software Testing: The Korat Approach
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Parallel bounded analysis in code with rich invariants by refinement of field bounds
Proceedings of the 2013 International Symposium on Software Testing and Analysis
What good are strong specifications?
Proceedings of the 2013 International Conference on Software Engineering
Reliability analysis in symbolic pathfinder
Proceedings of the 2013 International Conference on Software Engineering
Enhancing symbolic execution with built-in term rewriting and constrained lazy initialization
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
KATCH: high-coverage testing of software patches
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
SPLat: lightweight dynamic analysis for reducing combinatorics in testing configurable systems
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Scaling symbolic execution using staged analysis
Innovations in Systems and Software Engineering
Synthesis modulo recursive functions
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Systematic testing of refactoring engines on real software projects
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Hi-index | 0.05 |
This paper presents Korat, a novel framework for automated testing of Java programs. Given a formal specification for a method, Korat uses the method precondition to automatically generate all (nonisomorphic) test cases up to a given small size. Korat then executes the method on each test case, and uses the method postcondition as a test oracle to check the correctness of each output.To generate test cases for a method, Korat constructs a Java predicate (i.e., a method that returns a boolean) from the method's pre-condition. The heart of Korat is a technique for automatic test case generation: given a predicate and a bound on the size of its inputs, Korat generates all (nonisomorphic) inputs for which the predicate returns true. Korat exhaustively explores the bounded input space of the predicate but does so efficiently by monitoring the predicate's executions and pruning large portions of the search space.This paper illustrates the use of Korat for testing several data structures, including some from the Java Collections Framework. The experimental results show that it is feasible to generate test cases from Java predicates, even when the search space for inputs is very large. This paper also compares Korat with a testing framework based on declarative specifications. Contrary to our initial expectation, the experiments show that Korat generates test cases much faster than the declarative framework.