Randoop

Randoop is an automated test generation tool for Java. It generates tests that can potentially uncover defects in software applications. Randoop uses feedback-directed random test generation to create test cases that can cover a wide range of scenarios and edge cases.

Randoop works by analyzing the target software application and its dependencies to generate inputs that can be used as test cases. It then executes the inputs and monitors the output to identify any errors or exceptions that may occur. Randoop uses this information to generate new test cases that can further improve test coverage.

One of the advantages of Randoop is that it can generate test cases automatically, reducing the time and effort required for manual test generation. It can also generate tests that can potentially uncover defects or errors that may not be detected by manual testing.

However, Randoop has its limitations. It may generate tests that are not feasible or that do not have any meaningful assertions. It may also generate tests that are not reproducible or that are difficult to understand.

In conclusion, Randoop is a powerful tool for automated test generation in Java. It can help in improving test coverage and detecting defects or errors that may go unnoticed during manual testing. However, it should be used with caution and its limitations should be considered when using it for test generation.

Evosuite

Evosuite is an automated test generation tool for Java that uses search-based software engineering to generate tests. It uses genetic algorithms to create test cases that can cover a wide range of scenarios and edge cases.

Evosuite works by analyzing the target software application and its dependencies to generate inputs that can be used as test cases. It then executes the inputs and monitors the output to identify any errors or exceptions that may occur. Evosuite uses this information to generate new test cases that can further improve test coverage.

One of the advantages of Evosuite is that it can generate tests that are more efficient and effective than those generated by other automated test tools. It can also generate tests that can potentially uncover defects or errors that may not be detected by manual testing or other automated test tools.

However, Evosuite also has its limitations. It may generate tests that are not feasible, or that do not have any meaningful assertions. It may also generate tests that are not reproducible or that are difficult to understand.

In conclusion, Evosuite is a powerful tool for automated test generation in Java. It can help in improving test coverage and detecting defects or errors that may go unnoticed during manual testing or other automated test tools. However, it should be used with caution and its limitations should be considered when using it for test generation.

https://www.evosuite.org/wp-content/papercite-data/pdf/ssbse18_tutorial.pdf

https://www.evosuite.org/wp-content/papercite-data/pdf/ssbse18_tutorial.pdf

$EVOSUITE -listParameters