
ISTQB CTFL(v4) Chapter1
(1) What is Testing?
Definition
- Including static and dynamic testing
- Detecting defects
- Ensure product satisfy requirement
Typical Objectives
- To evaluate work products
- To find failures and defects
- To verify requirements fulfilled
- To validate test object
- To build confidence quality
- To provide information to stakeholders to make decisions
- To reduce the level of risk of inadequate software quality
- To comply with contractual, legal, or regulatory requirements or standards
Testing and Debugging
Testing (Tester): - Show failures that are caused by defects in the software - Check the fixes resolved the defects
Debugging (Dev): - Find, analyze and remove the causes of failures in a component or system
(2) Why is Testing Necessary?
Testing’s Contributions to Success
- In requirements reviews or user story refinement: reduces the risk of incorrect or untestable functionality being developed
- In system design:
- reduce the risk of fundamental design defects
- enable tests to be identified at an early stage
- In development:
- reduce the risk of defects within the code and the tests
- Verify and validate the software prior to release
- increases the likelihood that the software meets stakeholder needs and satisfies requirements
Quality Assurance and Testing
Quality assurance (QA): - Process-oriented - Assure quality - Preventive
Testing (Major form of QC): - Product-oriented - Control quality - Corrective - Finding bugs
Errors, Defects, and Failures
- Errors (Mistake): A human action that produces an incorrect result
- Fault (Defect, Bug):
- A manifestation of an error in software
- if executed, a fault may cause a failure
- fail to perform
- Failure: Deviation of the software from its expected delivery or service
Defects, Root Causes and Effects
- The root causes of defects are the earliest actions or conditions that contributed to creating the defects
- Identify their root causes of defects => reduce the occurrence of similar defects in the future
- Root cause analysis improves process => prevent a significant number of future defects from being introduced
(3) Seven Testing Principles
- Testing shows the presence of defects, not their absence
- Exhaustive testing is impossible
- Early testing saves time and money
- Defects cluster together
- Tests wear out
- Testing is context dependent
- Absence-of-errors is a fallacy
(4) Test Process
Test Process in Context
Testing is depending on various contextual factors: - Stakeholders (needs, expectations, requirements) - Team members (skills, knowledge) - Business domain - Technical factors (type of software) - Project constraints (scope, time, budget, resources) - Organizational factors (organizational structure) - Software development lifecycle - Tools (availability, usability)
Test Activities and Tasks => Test Work Products
Test planning: - Task: Define the objectives of testing, Define the approach - Work products: Test plan, Test schedule, Entry and Exit criteria
Test monitoring and control: - Task: Monitoring: Comparing actual progress against the test plan; Control: Taking actions necessary to meet the objectives of the test plan - Work products: Test progress report, Risk information
Test analysis: - Task: identify what to test; Evaluating the test basis and test items => identify defects of various types; Identifying features and sets of features to be tested; Defining and prioritizing test conditions for each feature based - Work products: Test condition (prioritized), Acceptance criteria
Test design: - Task: identify how to test; Designing and prioritizing test cases and sets of test cases; Defining the test data requirements; Designing the test environment - Work products: Test cases (prioritized), test charters, Test data and environment requirements
Test implementation: - Task: answers the question "do we now have everything in place to run the tests?"; Creating test suites and automated test scripts; Arranging the test suites; Building the test environment; Preparing test data - Work products: Test procedures, automated test scripts, test suites and data, test execution schedule
Test execution: - Task: run test; Executing tests; Comparing actual results with expected results; Reporting defects; Logging the outcome of test execution - Work products: Test logs, Defect reports
Test completion: - Task: Entering change requests or product backlog items; Creating a test completion report; Finalizing and archiving; Analyzing lessons learned - Work products: Test completion report, Action items for improvement, Change requests, Documented lessons learned
Traceability between the Test Basis and Test Work Products
- Verify that the requirements are covered by test cases
- evaluate the level of residual risk in a test object
- Analyzing the impact of changes
- Improving the understanding of test progress and summary reports
- Providing information to assess product quality, process capability, and project progress
Roles in Testing
- Test management: team leadership; planning, monitoring & control, and completion
- Testing: analysis, design, implementation, and execution
(5) Essential Skills
Skills Required for Testing
- Testing knowledge
- curiosity and attention to details
- communication skills
- Analytical and critical thinking
- Technical knowledge
- Domain knowledge
Whole Team Approach
- everyone is responsible for quality
- Team members share the same workspace
- Testers work closely with other team members
Independence of Testing
- makes the tester more effective at finding defects
- verify, challenge, or disprove assumptions made by stakeholders
- Not a replacement for familiarity
- may lead to a lack of collaboration, communication problems
Likes (
0 )
comments (
0 )
2025-07-30 05:10:40