0% found this document useful (0 votes)
2 views2 pages

Concurrency Testing with FindBugs & MultithreadedTC

FindBugs is an open source static code analysis tool that includes rules for analyzing Java concurrent code to find errors or performance issues early. MultithreadedTC is a Java testing library that uses an internal metronome to control thread execution order and solve the non-determinism of concurrent applications. It implements tests as methods in a class extending MultithreadedTestCase, based on JUnit, rather than TestCase, so the tests cannot be integrated with other JUnit tests.

Uploaded by

amitfegade121
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views2 pages

Concurrency Testing with FindBugs & MultithreadedTC

FindBugs is an open source static code analysis tool that includes rules for analyzing Java concurrent code to find errors or performance issues early. MultithreadedTC is a Java testing library that uses an internal metronome to control thread execution order and solve the non-determinism of concurrent applications. It implements tests as methods in a class extending MultithreadedTestCase, based on JUnit, rather than TestCase, so the tests cannot be integrated with other JUnit tests.

Uploaded by

amitfegade121
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

1) Analyzing concurrent code with FindBugs:

The static code analysis tools are a set of tools that analyze the source code of an
application looking for potential errors. These tools, such as Checkstyle, PMD, or FindBugs
have a set of predefined rules of good practices and parse the source code looking for
violations of those rules. The objective is to find errors or places causing poor
performance early, before it will be executed in production.

One of these tools to analyze Java code is FindBugs. It's an open source tool that includes
a series of rules to analyze Java-concurrent code.

2) Testing concurrency code with MultithreadedTC:

MultithreadedTC is a Java library for testing concurrent applications. Its main objective is
to solve the problem of concurrent applications being non-deterministic. You can't control
their order of execution. For this purpose, it includes an internal metronome to control
the order of execution of the different threads that form the application. Those testing
threads are implemented as methods of a class.

The MultithreadedTC library is based on the JUnit library, which is the most often used
library to implement unit tests in Java. To implement a basic test using the
MultithreadedTC library, you have to extend the MultithreadedTestCase class. This class
extends the [Link] class that includes all the methods to check the
results of the test. It doesn't extend the [Link] class, so you can't
integrate the MultithreadedTC tests with other JUnit tests.

You might also like