Teaching an End-User Testing Methodology

One important focus of software engineering is how to develop quality software. Software testing is the main approach to the software quality assurance. Nowadays, more and more endusers write the program on their own but lack formal trainings on how to test their programs, and hence cannot guarantee the quality of their own software. Metamorphic testing is a simple, automatable, and cost-effective testing methodology. It is particularly suitable for end-users to test their own programs, because it does not demand the user to have great knowledge of software testing but knowledge of the program under development. In this paper, we report our experience in teaching metamorphic testing to various groups of students at Swinburne University of Technology, Melbourne, Australia. Our work not only enhances the teaching of software testing, but also fosters the training of end-user programmers.

[1]  Huai Liu,et al.  An innovative approach for testing bioinformatics programs using metamorphic testing , 2009, BMC Bioinformatics.

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

[3]  Edsger W. Dijkstra,et al.  The end of computing science? , 2001, CACM.

[4]  Marc J. Balcer,et al.  The category-partition method for specifying and generating fuctional tests , 1988, CACM.

[5]  Tsong Yueh Chen,et al.  Fault-based testing without the need of oracles , 2003, Inf. Softw. Technol..

[6]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[7]  Lee J. White,et al.  A Domain Strategy for Computer Program Testing , 1980, IEEE Transactions on Software Engineering.

[8]  Tsong Yueh Chen,et al.  An effective testing method for end-user programmers , 2005, WEUSE@ICSE.

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

[10]  Gregory Tassey,et al.  Prepared for what , 2007 .

[11]  Arnaud Gotlieb,et al.  Automated metamorphic testing , 2003, Proceedings 27th Annual International Computer Software and Applications Conference. COMPAC 2003.

[12]  Hong Zhu,et al.  Software unit test coverage and adequacy , 1997, ACM Comput. Surv..

[13]  Joc Sanders,et al.  Software quality - a framework for success in software development and support , 1994 .

[14]  Gregg Rothermel,et al.  End-user software engineering , 2004, Commun. ACM.

[15]  Gail E. Kaiser,et al.  Automatic system testing of programs without test oracles , 2009, ISSTA.