One of the features that makes Eclipse so popular within the Java community is the abundance of easy to use plug-ins. Many of these are freely available open-source tools. Plug-ins are available for virtually anything from implementing database connectivity to instant messaging. Because code quality is a critical aspect of production software applications, Eclipse has built-in tools that help developers write and deliver high quality code. Levent Gurses has employed a number of external plug-ins, including PMD, CheckStyle, JDepend, FindBugs, Cobertura, CPD, Metrics, and others to transform Eclipse into a powerhouse for writing, testing, and releasing high quality Java code. Levent shows you how to use Eclipse to improve your team's coding habits, enforce organizational standards, and zap bugs before they reach the client.
The standard quality check tools available in Eclipse
Test-driven development (TDD) is a new approach for software construction in which developers write automated unit tests before writing the code. These automated tests are always rerun after any codes changes. Proponents assert that TDD delivers software that is easier to maintain and of higher quality than using traditional development approaches. Based on experiences gained from real-world projects employing TDD, Peter Zimmerer shares his view of TDD's advantages and disadvantages and how the TDD concept can be extended to all levels of testing. Learn how to use TDD practices that support preventive testing throughout development and result in new levels of cooperation between developers and testers. Take away practical approaches and hints for introducing and practicing test-driven development in your organization.
In addition to the efficiency improvements you expect from automated testing tools, you can-and should-expect them to provide valuable metrics to help manage your testing effort. By exploiting the programmability of automation tools, you can support the measurement and reporting aspects of your department. Learn how Jack Frank employs these tools with minimal effort to create test execution
status reports, coverage metrics, and other key management reports. Learn what measurement data your automation tool needs to log for later reporting. See examples of the operational reports his automation tools generate, including run/re-run/not run, pass/fail, percent complete, and percent of overall system tested. Take with you examples of senior management reports, including Jack's favorite, "My Bosses' Boss Test Status Report"-names will be changed to hide the guilty. Regardless of the
With most GUI test tools that exist today, model-based testing for Java applications is extremely difficult to implement. According to Jeff Feldstein, you need a scripting language that allows for creating and manipulating complex data structures and driving your tests with models of the application. Learn about Jeff's success and the obstacles he faced implementing model-based testing for Java and HTML applications. During the presentation, Jeff demonstrates the use of IBM Rational Functional Tester and Java to create a model of HTML application and shows examples of the programming required for model-based testing. Learn ways to implement the data structures required for modeling in Java, what to avoid in creating the models, and how to automatically adapt test cases to changes in the application's GUI.
With the tools existing today, model-based testing for Java applications is extremely difficult to implement. According to Jeff Feldstein, you need a scripting language that allows for creating and manipulating complex data structures and driving your tests with models of the application. Learn about Jeff's success and the obstacles he faced implementing model-based testing for Java and HTML applications. During the presentation, Jeff demonstrates the use of XDE Tester's ScriptAssure and Java to create an HTML application model and shows examples of the programming required for model-based testing. In this model-driven approach, you will see how changes in the user interface do not require changes to the tests.
Ways to implement the required data structures in Java for modeling
What to avoid in creating the models
How to automatically adapt test cases to changes in the application's GUI
Continuous integration is the process of performing a fully automated build, run often, usually daily, during software development. How do you develop a robust platform architecture to automatically integrate your software into builds? How can open source tools fill the gaps in your platform architecture? After examining the benefits of continuous integration, Paul Duvall discusses techniques, such as architectural validation, configuration management, automated unit testing, and report generation within the process. From a working reference implementation in Java, learn the attributes of an effective platform architecture for continuous integration. Additionally, Paul will introduce you to open source tools, such as Ant, Maven, CruiseControl, Eclipse, xUnit, and others that can help you implement a continuous integration architecture in your environment.
Every test organization must report its findings in a concise, timely, and comprehensive way. Using a relational database to manage test information can dramatically reduce the cost and effort of such reporting. Learn the pitfalls to avoid when designing a test information database. Examine a concrete example of good test database design that you can apply immediately.
The key to accelerating test automation in any project is for a well-rounded, cohesive team to emerge that can marry its business knowledge with its technical expertise. This session is an in-depth case study of the evolution of automated testing at the BNSF Railroad. From record-and-playback to database-driven robust test scripts, this session will take you through each step of the $24 billion corporation's efforts to implement test automation.
What is the real value of computing performance improvement? What is the real cost of computing performance degradation? This paper describes an approach used at The Boeing Company to answer these questions. The challenges of presenting technical analyses in "dollars and cents, bottom line" terminology, and sample visual formats for communicating computing performance information
clearly, completely and concisely will be discussed.