PV1 Java Concurrency Stress (jcstress)executes test cases in an order that may lead to faults

Java Concurrency Stress executes tests concurrently and tries to identify reorderings or contract violations for concurrent code.

Application domain/field

Type of tool

Testing framework

Expected input

Optional: name of the specific test that should be run. Otherwise it runs all tests.

Format:

Text argument when executing the JAR file of jcstress.

Expected output

An HTML report with the test results. This includes how many tests failed (either because a strong assertion was violated, or some other reason), and 'interesting' tests.

Internals

Testing tool to ensure correctness of concurrency support in the JVM. It has a suite of tests that can be used for research in the correctness of concurrency support in the JVM, class libraries, and hardware. It can be used as a library as well. Note that jcstress can require significant time to catch all errors.

Comments

Part of the Code Tools project, this is a project that provides tools for developers who work on the OpenJDK code base.
Concurrency Java

Links

ProVerB specific



ProVerB is a part of SLEBoK. Last updated: February 2023.