|
Integrated Testing Builds In Quality
Achieve more reliable applications through methodologies, modeling, and new techniques for finding and analyzing errors
by Peter Varhol
May 2003 Issue
Application development tools have spent the last several years maturing and building up compliance with successive versions of Java Development Kits (JDKs); Java standard and enterprise edition toolkits; and supporting technologies such as JavaServer Pages (JSPs), Enterprise JavaBeans (EJBs), Java API for XML (JAX), JDBC, and a host of others. Today you can use virtually any Integrated Development Environment (IDE) to build a distributed application, using virtually any of the established technologies under the umbrella of Java 2 Platform, Enterprise Edition (J2EE) or Java 2 Platform, Standard Edition (J2SE). While new technologies such as JavaServer Faces (JSF) and Simple Object Access Protocol (SOAP) with Attachments API for Java (SAAJ) are still being rolled out, they are not yet central to application development and will be incorporated into IDEs as new versions are released.
This scenario seemingly puts all of the tools a developer needs at his or her fingertips. It's possible to use IDEs from IBM, Borland, Oracle, and others to build an application from beginning to end, entirely within the IDE. The advantage is one of productivity and consistency. By working with integrated development and testing tools across the application life cycle, developers should be able to produce and test code more quickly and efficiently than when using several disjointed tools.
Nevertheless, writing distributed Java applications employing a variety of new technologies is hard. Part of this difficulty is the maturity of these technologies. Despite the care in design and implementation, and the number of eyes checking the process and end result, the initial releases of new technologies inevitably contain bugs, incompatibilities, and limitations. These tend to get ironed out in subsequent releases and bug fixes, but early adopters have learned to temper their enthusiasm with this reality.
Another part of the challenge is the skills we employ. Because of the relative infancy of the Java language and platform, many of the more senior developers have moved over from other languages, most of which lack the object-oriented nature or run-time characteristics of Java. That's not to say that there aren't good, experienced Java developers, but that the full features and benefits of J2EE won't be realized until we build up significantly more experience with the ever-growing platform.
Development tools are addressing some of the hard parts of building applications by bringing together still more technologies and integrating them in imaginative and useful ways. In particular, integrating testing into the development process and development tools lets developers do unit and integration testing as a part of the software development process, rather than as separate coding and testing tasks.
Back to top
|