Teaching automated test case generation

Software testing is a major approach to software quality assurance, but it is relatively neglected in universities' computing curricula. For students majoring in computer science or software engineering, several basic testing methods need to be taught. These testing methods generate test cases based on either specifications or program code. When introducing the testing methods based on program code, it is not easy to let the students experience automated test case generation due to the lack of supporting tools and limited teaching hours. In this paper we report our experience in teaching this topic with limited resources. The evaluation result indicates that our teaching method is effective and can also be adopted in other computer science/software engineering subjects where similar constraints exist.

[1]  Sigrid Eldh Software Testing Techniques , 2007 .

[2]  William E. Howden,et al.  Methodology for the Generation of Program Test Data , 1975, IEEE Transactions on Computers.

[3]  Tsong Yueh Chen,et al.  Experience with teaching black-box testing in a computer science/software engineering curriculum , 2004, IEEE Transactions on Education.

[4]  David A. Carrington,et al.  Teaching software testing , 1997, ACSE '97.

[5]  Daniel Hoffman,et al.  Teaching and testing , 1996, Proceedings of 9th Conference on Software Engineering Education.

[6]  Edward L. Jones,et al.  A perspective on teaching software testing , 2001 .

[7]  Bogdan Korel,et al.  Automated Software Test Data Generation , 1990, IEEE Trans. Software Eng..

[8]  Boris Beizer,et al.  Software testing techniques (2. ed.) , 1990 .

[9]  Diane Kelly,et al.  More testing should be taught , 2001, CACM.

[10]  Jon Edvardsson,et al.  A Survey on Automatic Test Data Generation , 2002 .

[11]  Brent Hailpern,et al.  Software debugging, testing, and verification , 2002, IBM Syst. J..