Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does something like CHESS exist for Java? [closed]

CHESS is a tool for finding and reproducing Heisenbugs in concurrent programs. CHESS repeatedly runs a concurrent test ensuring that every run takes a different interleaving. If an interleaving results in an error, CHESS can reproduce the interleaving for improved debugging. [Source]

Does a tool like this exist for Java?

like image 401
Bjarke Freund-Hansen Avatar asked Dec 02 '11 13:12

Bjarke Freund-Hansen


2 Answers

Haven't used in personally, but the book Clean Code by Robert C. Martin describes a tool from IBM called ConTest that is supposed to aid concurrent testing similarly:

ConTest - A Tool for Testing Multi-threaded Java Applications

like image 186
Jon Avatar answered Oct 18 '22 13:10

Jon


The only tool I'm aware of that's somewhat like what you're describing is an academic project called RoadRunner, which is described in this paper:

The ROADRUNNER Dynamic Analysis Framework for Concurrent Programs

And available for download here:

The RoadRunner Dynamic Analysis Framework

Again, I don't think that's exactly what you're looking for, but I'm not aware of anything closer. I'll be interested to see if anyone comes up with an exact analogue.

like image 44
Shaun Avatar answered Oct 18 '22 14:10

Shaun