| |
| |
|
|
The Extreme approach to complete Java application testing
- Learn Swing user interface testing strategy
- Automate testing of components usually thought too hard to test automatically
- Practical guide with ready-to-use examples and source code
- Based on the authors’ experience developing and testing commercial software
|
|
- Buy 2 books, get 18% off
- Buy 2 eBooks, get 35% off
|
Code download Request a Review Copy Send us feedback on this title Ask a question about this title
Sample Chapter 9 Case Study: Testing a 'Save as' Dialog [1.0 MB] Table of Contents
Language English
Paperback 328 pages [191mm x 235mm]
Release date
June 2008
ISBN 1847194826
ISBN 13 978-1-847194-82-4
Author(s)
Lindsay Peters, Tim Lavers
Topics and Technologies
Open Source, Java
This book is a practical guide to automated software testing for extreme Java programming using Swing GUIs, with lots of ready-to-use real-life examples and source code for automated testing of the software components usually regarded as too hard to test automatically.
Thorough testing is the basis of good software. Whether we use an agile development methodology such as Extreme Programming, or a more traditional approach, we must test our software at the unit level and application level. The tests must run automatically and cover all aspects of the software. In this book, the authors draw on more than 20 years of experience to show how automated testing can be applied to a real commercial product.
This book will teach you how to automatically test user interfaces (Swing GUIs), the help system, internationalization, log files, spreadsheets, email, and web services, how to perform tests involving multiple JVMs, and a host of other things. These tests are applied at the module level (unit tests) and at the application level (function tests).
The authors have developed the test processes in the broader context of an Extreme Programming (XP) methodology. However, the testing techniques are certainly not specific to XP, and may be applied within any given development methodology.
Read the full Table of Contents for Swing Extreme Testing
- What needs testing in a Java software project—the extreme testing approach
- Managing test classes and test data
- Useful tools for robotically testing Java applications
- Managing and testing user interface components, and using UI wrappers in function testing
- Setting up Swing GUI components in a thread-safe manner
- Creating and testing a JavaHelp system for an application
- Testing highly multi-threaded system and communication with external systems
- Testing the logs produced by a software application
- Embedding GUI components in server-side classes
- Managing databases in a way that facilitates testing
- Specifying and writing tests at the system level, tests using multiple JVMs
- Basics of load testing
- Exploring GrandTestAuto, a tool for test automation, coverage checking, and distributed testing
- Dealing with intermittent test failures
This book is a practical guide based on the authors’ daily experience developing and maintaining a cutting-edge Artificial Intelligence system. Every chapter comes up with real-life examples and the source code that comes with the book is full of useful (and well-tested) tools. The practical examples make this book suitable learning material for Swing developers.
This book is for Swing developers who design and develop complex software for user interfaces that requires extensive testing. If you want to learn to test your Swing GUI components, this book is for you.
Lindsay Peters
Lindsay Peters is the Chief Technical Officer for Pacific Knowledge Systems.
He an experience of 25 years in software management, formal analysis, algorithm
development, software design, and implementation for large commercial and
defense systems. Ten years ago, Lindsay and his team were the early adopters of Java,
coupled with more rigorous design processes such as Design by Contract. He then
helped transition the development team to the Extreme Programming model. Out of
this exciting and successful experience grew the "Extreme Testing" approach.
In the early 80's, Lindsay managed a software team that was one of the first to
incorporate the newly discovered simulated annealing algorithm into a commercial
application. This team solved a previously intractable real-world problem, which was the
optimum assignment of radio frequencies to collocated mobile radios.
Apart from software development and artificial intelligence systems, Lindsay has an
interest in mathematical convexity, and has helped to progress the "Happy Ending"
problem. He is also involved in politics, and in the last Australian Federal election
he stood as the Greens candidate for the seat of Bennelong.
Tim Lavers
Tim Lavers is a Senior Software Engineer at Pacific Knowledge Systems, which
produces LabWizard—the gold standard for rules-based knowledge acquisition
software. In developing and maintaining LabWizard for almost 10 years, Tim
has worked with many Java technologies, including network programming,
Swing, reflection, logging, JavaHelp, web services, RMI, WebStart, preferences,
internationalization, concurrent programming, XML, and databases. He has worked with tools as well,
such as Ant and CruiseControl. His job also includes a healthy mix of user training,
technical support, and support to marketing. In his previous job, he wrote servlets
and built an image processing library. Along with his professional programming, he
writes and maintains the distributed testing tool, GrandTestAuto. He has
published a JavaWorld article on RMI as well as a number of mathematical papers.
Tim's hobbies include running and playing the piano.
| |
|