Testing Concurrent Java Programs looks at: 1. What makes it hard to test and write Multithreaded code. 2. Improving design and structure of Multithreaded code to enhance the testability. 3. Writing Effective Unit tests for concurrent programs. 4. Demo – build a small example application using concurrency and putting test safety net around it. 5. Share some interesting situations faced while developing a Multi-core application and remedies applied.
Concurrent Programs in Java are tougher to write than the sequential ones and especially harder to test. Tests for concurrent programs are themselves concurrent programs. So the failure modes of concurrent programs are less predictable and repeatable than for sequential programs. A failed sequential program for a given set of input would fail each and every time put through the same test, whereas the concurrent version may not necessarily fail for the same test each time.
Testing Concurrent Java Programs was presented at 6th Annual IndicThreads.com Conference On Java, December 2011, Pune, India.
Sameer Arora is a Senior Consultant for Xebia IT Architects. He has close to seven years of experience in the Software Industry. He has worked on several projects for leading banks and investment firms using Java/J2ee as the primary technology.
* On play, you can change the layout as convenient.