
ISTQB CTFL(v4) Chapter2
(1) Software Development Lifecycle
Models
- Sequential
- waterfall model
- V-model
- Iterative
- spiral
- prototyping
- Kanban
- Scrum
- Incremental
- Unified Process
Impact on Testing
- Scope and timing
- test documentation
- test techniques and approach
- test automation
- Role and responsibilities
- Testing practices
- Every SD activity has a corresponding test activity
- Test levels have specific and different test objectives
- Initiate test analysis and design during the corresponding development phase
- Involve testers in reviewing workproducts
Testing as a Driver for SD
- Test-Driven Development (TDD)
- Directs the coding through test cases
- Acceptance Test-Driven Development (ATDD)
- Derives tests from acceptance criteria
- Behavior-Driven Development (BDD)
- Using the (Given/When/Then) format
DevOps
- Development (including testing) and operations work together
- Fast feedback
- shift-left approach
- Continuous integration (CI) continuous delivery (CD)
- Build, test and release high-quality code faster
- focus on non-functional quality
- regression risk is minimized
Shift-Left Approach
- Reviewing the specification
- Writing test cases before the code
- Using CI and CD --> fast feedback
- static code analysis
- non-functional testing at the component test level
Retrospectives
- Discuss:
- What was successful, and should be retained?
- What was not successful and could be improved?
- How to incorporate the improvements?
- Benefits:
- Increased test effectiveness/efficiency
- Increased quality of testware and test basis
- Team bonding and learning
- cooperation between development and testing
(2) Test Levels and Test Types
Test Levels
- Component
- Testing components in isolation (by dev)
- Component integration
- Testing the interfaces and interactions between components (by dev)
- bottom-up
- top-down
- big-bang
- System
- overall behavior of the entire system
- functional testing
- non-functional testing
- System integration
- Testing the interfaces of the system with other systems
- test environments should be similar to the operational environment
- Acceptance
- focuses on validation
- User acceptance testing (UAT)
- operational acceptance testing
- contractual and regulatory acceptance testing
- alpha and beta testing
Test Types
- Functional
- "what" the test object should do
- Non-functional
- testing of "how well the system behaves"
- Performance
- Compatibility
- Usability
- Reliability
- Security
- Maintainability
- Portability
- Black-box
- Checking the system's behavior against its specifications (specification-based)
- White-box
- cover the underlying structure by the tests (structure-based)
Confirmation Testing
- confirms that an original defect has been successfully fixed
- Can be done by:
- Executing all the failed test cases
- Adding new tests to cover any change
- Reproducing the failure and ensuring it no longer occurs
Regression Testing
- confirms that a change or the confirmed fix has not resulted in adverse consequences
- Perform an impact analysis to know which parts of the software could be affected
(3) Maintenance Testing
- Scope depends on:
- The degree of risk of the change
- The size of the existing system
- The size of the change
- Classified as:
- Modifications
- Planned releases
- Unplanned releases (hot fix)
- Upgrades or migrations of the operational environment
- Retirement
- Testing of data archiving and restore procedures
Likes (
0 )
comments (
0 )
2025-07-30 12:54:53