kirancodes.me
To Proof Maintenance & Beyond!

Improved multithreaded unit testing

Vilas Jagannath, Milos Gligoric, Dongyun Jin, Qingzhou Luo, Grigore Rosu, Darko Marinov

Abstract

Multithreaded code is notoriously hard to develop and test. A multithreaded test exercises the code under test with two or more threads. Each test execution follows some schedule/interleaving of the multiple threads, and different schedules can give different results. Developers often want to enforce a particular schedule for test execution, and to do so, they use time delays (Thread.sleep in Java). Unfortunately, this approach can produce false positives or negatives, and can result in unnecessarily long testing time.

BibTeX
@inproceedings{Jagannath-al:FSE11,
  author    = {Vilas Jagannath and
               Milos Gligoric and
               Dongyun Jin and
               Qingzhou Luo and
               Grigore Rosu and
               Darko Marinov},
  title     = {Improved multithreaded unit testing},
  booktitle = {FSE},
  pages     = {223--233},
  publisher = {{ACM}},
  year      = {2011},
}

Related papers