Testing types Flashcards
Test levels (V shape)
(bottom to top)
Component testing
Integration testing
System testing
Acceptance testing
component testing
(bottom)
- searches for defects in and verifies the functioning of software modules, programs and objects
- normally takes place during the coding phase
- includes functional and non functional testing
Integration testing
- Takes place between phases
- Performed to expose defects in interactions between integrated components or systems (can front end display info from database)
- Usually performed by developer
Typical test objects of integration testing
Performed to expose defects in interfaces and interactions between integrated components and systems
- Sub-system implementation
- Infrastructure
- Interfaces
System-level testing
(level up from integration testing)
- Testing behaviour of whole system
- functional and non-functional
- Usually performed by test engineers
Acceptance testing
Testing software in respect to user-needs
- Builds confidence/assesses readiness
- Checks if a system satisfies acceptance criteria
- Involves alpha and beta testing
- Usually performed by end users
4 key types of testing
- Functional (testing what the system does, correct to spec)
- Non-functional (testing how the system behaves, adheres to behaviours
- Structural (Testing structure/architecture, making sure the components operate correctly
- Change-based (Re-testing and regression testing, ensure changes dont introduce new defects)
Functional testing
What the system does - the external behaviour
- does it meet the requirements specification
- Checking for other use cases
- Experiential (testing for common mistakes)
- referred to as blackbox testing
- also includes security and interoperability
Black box testing
only concerned with external behaviour
- applicable to all V levels
Non-functional testing
How the system works (quality of system itself)
Applicable to all levels of the software testing process
Types of non-functional testing
- Performance testing
- Load testing
- Stress testing
- Usability testing
- Maintainability testing
- Portability testing
Performance testing