|
Tuesday Morning
|
| 49 | Automating Software Testing in Java using Beans and Reflection Nigel Bakker, Software Futures Chris Nel, Futureworks |
Colorado Convention Center - C109 |
|
Getting software developers to perform unit testing adequately is challenging. The Java language has some interesting features that make it possible to automate much of this task and even add an element of fun to it. We explore techniques for simplifying testing. A common OO software testing approach uses harnesses or test classes to exercise the classes under test. This approach has a number of problems and limitations. We contrast this with a framework that uses Beans and Reflection for automating unit testing. We also show how to extend the framework for automating functional testing through test cases. A combination of slides and demonstrations are used to build from basic concepts through to actual implementation.
Attendees will learn about testing concepts, the Java Reflection API and the Java Beans specification as applied to automated unit testing. They will be shown how black box, and to a lesser extent, how white box testing can be automated by exploiting built in language features. Attendee Background: A working knowledge of Java is essential. Some experience with object modeling would be useful since many of the design elements are presented using the UML. The material is intended for developers and architects who would like to improve the quality of testing in their development processes. Nigel Bakker is a Senior Consultant at Software Futures in the area of Object Technology. He has had over 13 years of software development experience, including eight years applying Object Technology in applications ranging from banking systems to embedded controller and communication systems. He has recently been asked to author a column for the online publication ITWeb. ( http://www.itweb.co.za ) Chris Nel has more than 10 years experience in software development; Including analysis, design, implementation and testing thereof. Chris is involved on a daily basis with cutting and testing code. |
|
at a Glance |
|
of all Tutorials |
|