Title :
Compiling a benchmark of documented multi-threaded bugs
Author :
Eytani, Yaniv ; Ur, Shmuel
Author_Institution :
Dept. of Comput. Sci., Haifa Univ., Israel
Abstract :
Summary form only given. Testing multithreaded, concurrent, or distributed programs is acknowledged to be a very difficult task. We decided to create a benchmark of programs containing documented multithreaded bugs that can be used in the development of testing tool for the domain. In order to augment the benchmark with a sizable number of programs, we assigned students in a software testing class to write buggy multithreaded Java programs and document the bugs. This paper documents this experiment. We explain the task that was given to the students, go over the bugs that they put into the programs both intentionally and unintentionally, and show our findings. We believe this part of the benchmark shows typical programming practices, including bugs, of novice programmers. In grading the assignments, we used our technologies to look for undocumented bugs. In addition to finding many undocumented bugs, which was not surprising given that writing correct multithreaded code is difficult, we also found a number of bugs in our tools. We think this is a good indication of the expected utility of the benchmark for multithreaded testing tool creators.
Keywords :
Java; benchmark testing; multi-threading; program compilers; program debugging; program testing; Java; benchmark testing; concurrent programs; distributed programs; documented multithreaded bugs; software testing tool; Benchmark testing; Computer bugs; Computer science; Interleaved codes; Internet; Java; Programming profession; Software testing; Utility theory; Writing;
Conference_Titel :
Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International
Print_ISBN :
0-7695-2132-0
DOI :
10.1109/IPDPS.2004.1303339