Partition Testing Does Not Inspire Confidence (Program Testing)
IEEE Transactions on Software Engineering
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Art of Software Testing
Korat: automated testing based on Java predicates
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
ECSQ '02 Proceedings of the 7th International Conference on Software Quality
Mirror Adaptive Random Testing
QSIC '03 Proceedings of the Third International Conference on Quality Software
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
Adaptive Random Testing Through Dynamic Partitioning
QSIC '04 Proceedings of the Quality Software, Fourth International Conference
JCrasher: an automatic robustness tester for Java
Software—Practice & Experience
DART: directed automated random testing
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Lattice-based adaptive random testing
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Tool support for randomized unit testing
Proceedings of the 1st international workshop on Random testing
Object distance and its application to adaptive random testing of object-oriented programs
Proceedings of the 1st international workshop on Random testing
Feedback-Directed Random Test Generation
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Experimental assessment of random testing for object-oriented software
Proceedings of the 2007 international symposium on Software testing and analysis
Automatic Testing of Object-Oriented Software
SOFSEM '07 Proceedings of the 33rd conference on Current Trends in Theory and Practice of Computer Science
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
Adaptive random testing by bisection with restriction
ICFEM'05 Proceedings of the 7th international conference on Formal Methods and Software Engineering
ASIAN'04 Proceedings of the 9th Asian Computing Science conference on Advances in Computer Science: dedicated to Jean-Louis Lassez on the Occasion of His 5th Cycle Birthday
Eclat: automatic generation and classification of test inputs
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Using Dynamic Symbolic Execution to Improve Deductive Verification
SPIN '08 Proceedings of the 15th international workshop on Model Checking Software
Distributing test cases more evenly in adaptive random testing
Journal of Systems and Software
Adaptive random testing based on distribution metrics
Journal of Systems and Software
Adaptive Random Testing: The ART of test case diversity
Journal of Systems and Software
Proceedings of the 5th Workshop on Automation of Software Test
Mutation-driven generation of unit tests and oracles
Proceedings of the 19th international symposium on Software testing and analysis
Random unit-test generation with MUT-aware sequence recommendation
Proceedings of the IEEE/ACM international conference on Automated software engineering
Contract-driven testing of javascript code
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
Reducing the cost of model-based testing through test case diversity
ICTSS'10 Proceedings of the 22nd IFIP WG 6.1 international conference on Testing software and systems
Fuzzing the out-of-memory killer on embedded Linux: an adaptive random approach
Proceedings of the 2011 ACM Symposium on Applied Computing
Adaptive random testing: an illusion of effectiveness?
Proceedings of the 2011 International Symposium on Software Testing and Analysis
Generating parameterized unit tests
Proceedings of the 2011 International Symposium on Software Testing and Analysis
Automatic testing environment for multi-core embedded software-ATEMES
Journal of Systems and Software
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
Automated documentation inference to explain failed tests
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
How well does test case prioritization integrate with statistical fault localization?
Information and Software Technology
Sound empirical evidence in software testing
Proceedings of the 34th International Conference on Software Engineering
Proceedings of the 34th International Conference on Software Engineering
BALLERINA: automatic generation and clustering of efficient random unit tests for multithreaded code
Proceedings of the 34th International Conference on Software Engineering
Software—Practice & Experience
CarFast: achieving higher statement coverage faster
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Comparing multi-point stride coverage and dataflow coverage
Proceedings of the 2013 International Conference on Software Engineering
Automatic testing of sequential and concurrent substitutability
Proceedings of the 2013 International Conference on Software Engineering
An orchestrated survey of methodologies for automated software test case generation
Journal of Systems and Software
PathART: path-sensitive adaptive random testing
Proceedings of the 5th Asia-Pacific Symposium on Internetware
Hi-index | 0.00 |
Intuition is often not a good guide to know which testing strategies will work best. There is no substitute for experimental analysis based on objective criteria: how many faults a strategy finds, and how fast. "Random" testing is an example of an idea that intuitively seems simplistic or even dumb, but when assessed through such criteria can yield better results than seemingly smarter strategies. The efficiency of random testing is improved if the generated inputs are evenly spread across the input domain. This is the idea of Adaptive Random Testing (ART). ART was initially proposed for numerical inputs, on which a notion of distance is immediately available. To extend the ideas to the testing of object-oriented software, we have developed a notion of distance between objects and a new testing strategy called ARTOO, which selects as inputs objects that have the highest average distance to those already used as test inputs. ARTOO has been implemented as part of a tool for automated testing of object-oriented software. We present the ARTOO concepts, their implementation, and a set of experimental results of its application. Analysis of the results shows in particular that, compared to a directed random strategy, ARTOO reduces the number of tests generated until the first fault is found, in some cases by as much as two orders of magnitude. ARTOO also uncovers faults that the random strategy does not find in the time allotted, and its performance is more predictable.