JCrasher: an automatic robustness tester for Java
By Christoph Csallner, Yannis Smaragdakis. Software, Practice & Experience, 2004
475 citations recorded by the source corpus.
Subfields: Information Systems, Software
View Paper: https://www.semanticscholar.org/paper/208a35b667ac0b17333f593f9c68cc8d8603df1e
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Information Systems
- Gordon Fraser
- Koushik Sen
- Stephan Lukasczyk
- Xifeng Yan
- Jiawei Han
- Yuriy Brun
- Andrea Arcuri
- Michael D. Ernst
In Software
- Gordon Fraser
- Koushik Sen
- Andrea Arcuri
- Stephan Lukasczyk
- Michael D. Ernst
- Rupak Majumdar
- Andreas Zeller
- Yuriy Brun
Citations in the corpus
- Mutation-Driven Generation of Unit Tests and Oracles (2010, methodology): “Besides random input generation a recent trend is also generation of random unit tests, as for example implemented in Randoop [26], JCrasher [10], AutoTest [9], or RUTE-J [3].”
- EvoSuite: automatic test suite generation for object-oriented software (2011, background): “Often, these test cases are generated randomly with the objective to detect program crashes [2] or to find contract violations [11].”
- Hybrid Concolic Testing (2007, background): “The simplest, and yet often very effective, techniques use random generation of (concrete) te st inputs [3, 22, 12, 5, 7, 23, 20].”
- Whole Test Suite Generation (2013, methodology): “To achieve full coverage in such cases one would need to unload classes after each test execution; EVOSUITE uses a faster but less precise approach introduced in the JCrasher [15] tool, where static constructors are duplicated in callable methods and then reexecuted before test execution.”
- Automated Unit Test Generation for Python (2020, methodology): “Random testing assembles sequences of calls to constructors and methods randomly, often with the objective to find undeclared exceptions [6] or violations of general object contracts [15], but the generated tests can also be used as automated regression tests.”
- Android permissions demystified (2011, methodology): “Unlike comparable techniques [4,9,21], Randoop does not need a sample execution trace as input, making large-scale testing such as API fuzzing more manageable.”
- Randoop: feedback-directed random testing for Java (2007, methodology): “Tools for generating unit tests for Java code include JCrasher [2], Eclat [4], and Jartege [3] (academic), and Jtest [6] and Agitator [1] (commercial).”
- Feedback-Directed Random Test Generation (2007, methodology): “14 widely-used libraries, and compares with JPF and with undirected random testing (as implemented in RANDOOP and in JCrasher [3]).”
- CUTE: a concolic unit testing engine for C (2005, background): “nique is to randomly choose the values over the domain of potential inputs [4,8,10,21].”
- Fairness testing: testing software for discrimination (2017, methodology): “Automated testing research has produced tools to generate tests, including random testing, such as Randoop [63, 64], NightHawk [4], JCrasher [20], CarFast [65], and T3 [69]; search-based testing, such as EvoSuite [29], TestFul [9], and eToc [78]; dynamic symbolic execution tools, such as DSC [37], S”
- Robustness Testing of Autonomy Software (2017, unknown): “in software from operating systems [15, 24], drivers [29], the Java API [9], and libraries [14], to safety-critical software [36].”
- Symstra: A Framework for Generating Object-Oriented Unit Tests Using Symbolic Execution (2005, methodology): “Some tools such as Jtest [27] or JCrasher [13] test a class by generating random sequences of methods; for BST, they could for example generate the following tests:”
- An Empirical Evaluation of Using Large Language Models for Automated Unit Test Generation (2023, methodology): “This fact has inspired extensive research on techniques for automated test generation including fuzzing [5], [6], feedback-directed random test generation [7], [8], [9], [10], [11], dynamic symbolic execution [12], [13], [14], [15], and search-based and evolutionary techniques [16], [17].”
- Heuristics for Scalable Dynamic Test Generation (2008, methodology): “A simple and effective technique for automated test generation is random testing [2, 22, 9, 4, 6, 23] (a.”
- Statistical Debugging: A Hypothesis Testing-Based Approach (2006, background): “can help expedite the generation of test cases [26], [27], [28],”