This course covers the latest black-box, white-box, and exploratory testing techniques, including orthogonal arrays, state-transition diagrams, control and data flows, and much more.
The course also addresses methods for selecting, designing, and documenting test cases for the best results and how test design fits in the big picture, including capturing, reporting, and analysing defects.
- Superior content with clearly stated objectives
- Reinforcement learning questions, tutorials, student exercises, group discussions and a post-course assessment
- Upon completion of the course a certificate of completion will be issued to each student
Course Duration: 3 Days
Target Audience: This course is ideal for Software Developers, QA Analysts, and all Testing Professionals. This course is appropriate for novice and experienced software developers, QA analysts, and testing professionals. Test and development managers can also benefit from the course. A background of basic development processes and languages and test levels is helpful but not required.
Pricing: R5 695 per delegate (Excl. VAT)
Course Overview
Introduction to Testing Basics
- What should we test?
- Test case inputs and outputs
- Test oracles
- Appropriate level of detail for test case documentation
Introduction to Black-Box Testing
- The differences between black-box and white-box testing
- What is grey-box testing?
- Applying black-box tests to different test levels
Equivalence Classes and Boundary Values
- Identifying equivalence classes
- Continuous, discrete, set, and Boolean equivalence classes
- Creating equivalence classes
- Identifying boundary values
- Valid and invalid boundary values
- Student exercise
Decision Tables
- What are decision tables?
- Decision table examples
- Testing with Decision Table
- Student exercise
State-Transition Diagrams
- What are state machines and state-transition diagrams?
- Examples of states, transitions, events, and conditions
- Testing with state-transition diagrams
- Tutorial example of testing with state-transition diagrams
Table representation of state-transitions diagram information- Student exercise
Orthogonal Arrays
- Orthogonal arrays defined
- Small and large orthogonal arrays
- Using orthogonal arrays for testing
- Efficiency of testing with orthogonal arrays
- Tutorial example of testing with orthogonal arrays
- Student exercise
Black-Box Big Picture
- Traceability of requirements and test objectives
- Cross-functional testing
- Risk analysis
Introduction to White-Box Testing
- White-box unit, integration, and system testing
- Special types of white-box tests
- Grey Box testing
White-Box Unit Testing
- Control flows in units: entry, sequences, decisions, loops, ends
- McCabe complexity and basis paths
- Statement and decision coverage
- Tutorial example of white-box unit testing
- Student exercise
White-Box Integration Testing
- Control flows between units
- Basis tests for integration
- Path analysis via design predicates
- Integration complexity and creating basis tests
- Tutorial example of white-box unit testing
- Student exercise
White-Box System Testing
- Flows in systems and sub-systems
- Diagramming system flows
- Special white-box system tests: performance, security, configuration, and data testing
- An eCommerce example
Exploratory Testing
- Limits of white-box and black-box testing
- What should exploratory testers know?
- Steps for exploratory testing
- Hunches, guesses, creative invalids, assumptions, random testing
- Tutorial example of exploratory testing
Regression Testing
- What is regression testing?
- Testing for local, unmasked, and remote regression
- Testing for new and existing regression
- Dealing with regression risk
- Regression test automation options
- Release strategies and regression
Handling Defects
- Expected versus unexpected results
- False, shy, gregarious, sly, and tricky bugs
- Options for reporting and handling bugs
- Test implications of fixing bugs
- The bug lifecycle and learning from bugs
- Bug metrics
Conclusion
- Review of test design techniques and methods
- Post-course assessment





Test Automation
Performance Testing
Mastering Test Design
ISTQB - Advanced Test Analyst