Conference Presentations

Achieving Meaningful Metrics from Your Test Automation Tools

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

Jack Frank, Mosaic Inc
Test Driven Development (TDD) for Secure Applications

Test Driven Development (TDD) has emerged as a successful productivity technique for development teams. As a unit testing methodology, TDD prescribes a simple three-step process of (1) develop test, (2) write code, and (3) re-factor the code. In a question-and-answer tag-team

James Whittaker, Florida Institute of Technology
Test Improvement for Highly Reliable NYSE Trading Systems

With billions of dollars changing hands every day, financial trading systems demand extremely high accuracy and reliability. So, how do you improve test process performance in the areas of time to market and efficiency and at the same time reduce failures? Over the last three years, using process and project measurement data as a guide, SIAC has focused on doing exactly that. Steve Boycan highlights the key elements of the process changes that have led to SIAC's current performance: the use of a rigorous requirements engineering process; controlled parallel and iterative work flows; changes to the level of abstraction in test documentation; emphasis on test planning, analysis, and design; causal analysis; and improving the test team's skills.

Steve Boycan, SIAC
The QA/Testing Perspective on Software Security

Most everyone now realizes that we cannot solve security vulnerabilities with firewalls, virus scanners, and other tactics that build an electronic “moat” around systems. According to Julian Harty, security is not an operational issue, not a developer issue, and not a testing issue. It is a systems issue that you must focus on throughout the software’s life. From a QA/testing perspective, we need to look early in the development process for adequate security requirements. Then, we should assess the designs for vulnerabilities and participate in security code reviews. When specialized, security tests find bugs that get past our early prevention efforts, causal analysis helps prevent the recurring security defects. Dig into system security issues with Julian and learn about manual techniques, commercial software, and home-brew automation tools to help you find security vulnerabilities-before the bad guys do.

Julian Harty, Commercetest Limited
The Expert as Impediment

Turn to The Last Word, where software professionals who care about quality give you their opinions on hot topics. This month, Brian Marick offers advice on why people are sometimes right to resist experts.

Brian Marick
Code Craft: Tame the Name

All code is not created equal. Learn from a master of the craft how to spot bad code and mold it into good. In the first iteration of this regular column, learn why selecting names for classes, methods, and variables is an art you'll want to perfect.

Mike Clark
Evaluating Requirements for Testability

For a test engineer, perhaps the most important measure of requirements quality is testability. By improving testability during requirements development, you not only will make test design easier, but you also will have gone a long way toward building better software for less cost. Learn methods to identify the requirements problems that reduce or improve testability: ambiguity, incompleteness, inconsistency, incorrectness, and "compoundness." This method first was used successfully in a very large payroll system development project and has since been practiced in both large and small development projects. From this session take away a spreadsheet-based method for tracking requirements testability throughout the project, and see examples from an Access database that can be used for further requirements analysis.

  • How to analyze requirements for attributes that increase testability
Rodger Drabick, Lockheed Martin Transportation & Security Solutions
Lightweight .NET User Interface Testing

The .NET environment provides a surprising but little known way to create user interface (UI) test automation scripts. By employing objects in the System.Threading and System.Reflection namespaces, test engineers can write ad hoc automated UI test scenarios in minutes. James McCaffrey presents an example of a Windows-based application and creates a test program written in C# that verifies UI functionality by simulating user typing and clicking. James explains the code in detail so you can modify and extend the program to meet your own needs. Learn how to write ad hoc UI test automation for .NET-based Windows applications.

  • How to use System.Threading for test harness communications in .NET
  • Simulate .NET user interactions with System.Reflection
  • A look ahead to Avalon and its effect on user interface test automation
James McCaffrey, Volt Information Sciences, Inc.
Automate Acceptance Testing using Open Source FitNesse

FitNesse is an open source testing tool based on the Wiki Wiki Web and FIT (Framework for Integrated Tests). The Wiki Wiki Web is a collaboration tool in which anyone can create or change new pages to document or share any information. FIT is a framework and tool for creating automated acceptance tests. Joined together, FitNesse is a Web server-based tool for teams to easily and collaboratively create documents, specify tests, and run them. Micah Martin, co-creator of FitNesse, demonstrates how FitNesse can be used to create high-level feature tests that will drive development. Walk away with an understanding of how to automate acceptance testing in agile development and how it fits in with test-driven development.

  • What a Wiki is and how to use it
  • An introduction to the free FIT acceptance testing tool
  • Acceptance testing as part of the test-driven development practice
Micah Martin, Object Mentor, Inc.
Free Test Tools are Like a Box of Chocolates

You never know what you are going to get! Until you explore, it can be hard to tell whether a free, shareware, or open source tool is an abandoned and poorly documented research project or a robust powerhouse of a tool. In this information-filled presentation, Danny Faught shows you where open source and freeware tools fit within the overall test tool landscape. During this double session, Danny installs and tries out several tools right on the spot and shares tips on how to evaluate tools you find on the Web. Find out about licensing, maintenance, documentation, Web forums, bugs, and more. Discover the many different types of testing tools that are available for free and where to find them. Danny demonstrates examples of tools that you can put to use as soon as you get back to the office.

Danny Faught, Tejas Software Consulting

Pages

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.