| Finding errors in .net with feedback-directed random testing |
| Full text |
Pdf
(319 KB)
|
Source
|
International Symposium on Software Testing and Analysis
archive
Proceedings of the 2008 international symposium on Software testing and analysis
table of contents
Seattle, WA, USA
SESSION: Case studies
table of contents
Pages 87-96
Year of Publication: 2008
ISBN:978-1-60558-050-0
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 17, Downloads (12 Months): 107, Citation Count: 0
|
|
|
ABSTRACT
We present a case study in which a team of test engineers at Microsoft applied a feedback-directed random testing tool to a critical component of the .NET architecture. Due to its complexity and high reliability requirements, the component had already been tested by 40 test engineers over five years, using manual testing and many automated testing techniques. Nevertheless, the feedback-directed random testing tool found errors in the component that eluded previous testing, and did so two orders of magnitude faster than a typical test engineer (including time spent inspecting the results of the tool). The tool also led the test team to discover errors in other testing and analysis tools, and deficiencies in previous best-practice guidelines for manual testing. Finally, we identify challenges that random testing faces for continued effectiveness, including an observed decrease in the technique's error detection rate over time.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Microsoft .NET Framework. http://www.microsoft.com/net/.
|
| |
2
|
Agitar. Agitator tool, http://www.agitar.com.
|
| |
3
|
|
 |
4
|
Cristian Cadar , Vijay Ganesh , Peter M. Pawlowski , David L. Dill , Dawson R. Engler, EXE: automatically generating inputs of death, Proceedings of the 13th ACM conference on Computer and communications security, October 30-November 03, 2006, Alexandria, Virginia, USA
[doi> 10.1145/1180405.1180445]
|
| |
5
|
I. Ciupa and A. Leitner. Automatic testing based on design by contract. In Proceedings of Net.ObjectDays 2005 (6th Annual International Conference on Object--Oriented and Internet-based Technologies, Concepts, and Applications for a Networked World), pages 545--557, September 19-22 2005.
|
 |
6
|
|
| |
7
|
|
 |
8
|
|
| |
9
|
|
 |
10
|
|
| |
11
|
|
| |
12
|
D. Hamlet. Random testing. In Encyclopedia of Software Engineering. John Wiley and Sons, 1994.
|
| |
13
|
|
 |
14
|
|
| |
15
|
D. Marinov, A. Andoni, D. Daniliuc, S. Khurshid, and M. Rinard. An evaluation of exhaustive testing for data structures. Technical Report MIT/LCS/TR-921, MIT Laboratory for Computer Science, Sept. 2003.
|
 |
16
|
|
| |
17
|
|
 |
18
|
|
| |
19
|
C. Oriat. Jartege: A tool for random generation of unit tests for Java classes. In QoSA/SOQUA, pages 242--256, Sept. 2005.
|
| |
20
|
C. Pacheco and M. D. Ernst. Eclat: Automatic generation and classification of test inputs. In ECOOP 2005 -- Object-Oriented Programming, 19th European Conference, Glasgow, Scotland, July 25-29, 2005.
|
 |
21
|
|
| |
22
|
|
| |
23
|
Parasoft. JTest manuals version 6.0. Online manual.
|
| |
24
|
K. Sen and G. Agha. CUTE and jCUTE: Concolic unit testing and explicit path model-checking tools. In 18th International Conference on Computer Aided Verification (CAV'06), volume 4144 of Lecture Notes in Computer Science, pages 419--423. Springer, 2006. (Tool Paper).
|
 |
25
|
|
|