Requirements-Based Testing Workshop
- Develop and maintain efficient tests that cover all functional requirements
- Design test cases that force defects to appear early in testing
- Learn and practice cause-effect graphing to design more robust tests
- Learn and practice alternative test design approaches—pairwise, equivalence class
- Optimize and reduce the size of your test suite
- Integrate testing in the software development lifecycle
If your testing efforts are not achieving the payback you and your organization expect, this course is for you. Requirements-Based Testing (RBT) delivers a proven, rigorous approach for designing a consistent and repeatable set of highly optimized test cases. Companies employing RBT practices have achieved twice the requirements coverage with only half the tests they previously maintained.
Design the Test Library
The RBT process helps you validate that the requirements are clear and complete. Then, it guides you to define a set of tests verifying that the design and code fully meet those requirements. You’ll learn and practice cause-effect graphing, a test design technique which ensures that defects will be fully observable. If there are any defects in the software—even ones that could be hidden from tests by other errors—cause-effect graphing will find them. With this technique, you’ll be able to reduce the number of tests you need and make sure that every test is valuable.
Explore alternative test design techniques and the advantages and disadvantages of each. Learn how to complement functional, black-box testing with code-based, white-box testing to further ensure complete coverage and higher quality. Classroom exercises are employed throughout the course to reinforce your learning.
Leave with a Testing Process that Integrates with the Development Lifecycle
Take back a lifecycle testing process that incorporates testing as an integrated—and integral—part of the software development project. With the RBT process, your next project will experience significant time and cost savings while helping the test team develop better estimates and dynamically track test and project progress.
Bring samples from your own projects to work on and evaluate during class.
Who Should Attend?
Requirements-Based Testing is for test managers, test engineers, QA specialists, software managers, and anyone responsible for developing tests and test suites.
Although the focus of this course is on process and techniques, there will be a brief introduction to the BenderRBT™ software tool, which automates much of the requirements-based testing process.
Alternative Test Designs
Equivalence class testing
Exercise – Determine the states to tests
Review of other model-based testing techniques
Optimized pairs and orthogonal pairs
Exercise – Design tests using optimized pairs
Comparing the various test design approaches
Points of Integration
Integrating testing throughout development
Developing user acceptance tests before coding starts
Code-Based Testing
White-box test completion criteria
Data flow-based testing
Integrating black-box and white-box testing
Management Considerations
Planning and estimating guidelines
Change control
Test team organization
Tracking the testing effort
Contract management
Test Automation
Test automation issues
How the RBT process integrates with the rest of test automation
Richard Bender has more than forty-five years experience in software with a primary focus on quality assurance and testing. He has consulted internationally to large and small corporations, government agencies, and the military. Richard’s work has included a wide variety of application classes and technology bases from embedded systems to super computer-based systems—and everything in between—consulting to both vendors and IT departments alike. He has been active in establishing industry standards for software quality and is a frequent speaker at conferences, universities, and corporate events. He was one of the first programmers ever awarded IBM’s Outstanding Invention Award for his breakthroughs on code based testing.