Course Description
This 1-day User Acceptance Testing training course is for the end users of business information systems who are often expected to perform acceptance testing. Many of these users have a good understanding of the software application to be tested but lack appreciation of the principles and techniques of software testing. This 1-day course is intended to rectify this situation.
Outcomes include:
- understanding of quality concepts and the principles of software testing.
- ability to conduct acceptance testing more effectively
- ability to apply basic test case design techniques
- ability to document test cases and test procedures
Pre-requisites
Familiarity with business environments and business information systems.
Course content
Quality Concepts
– Quality is the same as excellence
– Quality cannot be measured
– Quality is expensive
– Quality can be tested into a product
– Quality depends on people
Principles of Software Testing
Why is testing necessary?
Software systems context
Causes of software defects (peopel)
Causes of software defects (environment)
How much testing is enough?
Testing principles
Principle 1: Testing shows presence of defects
Principle 2: Exhaustive testing is impossible
Principle 3: Early testing
Principle 4: Defect clustering
Principle 5: Pesticide paradox
Principle 6: Testing is context-dependent
Principle 7: Absence of errors fallacy
The software development life-cycle (SDLC)
The “V-model”
Types of testing
– Unit testing
– Integration testing
– System testing
– Acceptance testing
– Testing related to change
Testing & independence
Test Case Design Techniques
Equivalence partitioning
Identifying partitions of equivalent values
Selecting partition test cases
Equivalence partition coverage criteria
Boundary value analysis
Testing on the boundary between partitions
Selecting boundary test cases
Risks & coverage criteria
Test oracles
Who “tests” the test cases?
Automated test oracle
Documenting Test Cases
Input & output specifications
Environmental needs
Special procedural requirements
Test case dependencies
Documenting Test Procedures
Relationship to test cases
Special requirements
Test procedure template
Set up scenarios
Test scenarios
Exception scenarios
Error scenarios
Test management scenarios
Acceptance Testing
Introduction to acceptance testing
System vs. acceptance testing
Acceptance testing & the SDLC
Acceptance testing & third-party software
Acceptance testing approaches
End-to-end testing
Automated acceptance testing