Yulia 3 weeks ago committed by GitHub
parent 9d0c2667fc
commit 6eb156e1a3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 70
      src/data/roadmaps/qa/content/testing-approaches@uFOVuenPyOKZGgoJXkwRZ.md

@ -1,17 +1,71 @@
# Testing Approaches # Testing Approaches
Test approach has two techniques: Understanding various test approaches is crucial for selecting the most effective strategy for software testing. A test approach helps define the objective, scope, and methodology of testing. There are two broad categories: **Proactive** and **Reactive** approaches.
- Proactive - An approach in which the test design process is initiated as early as possible in order to find and fix the defects before the build is created. ## 1. Proactive Test Approach
- Reactive - An approach in which the testing is not started until after design and coding are completed. - **Definition:** Testers design tests early in the software development process to identify and prevent defects.
- **Key Focus:** Prevention rather than detection.
- **Collaboration:** Involves continuous collaboration with developers, business analysts, and stakeholders to identify risks and critical areas early on.
- **Key Benefits:** Helps identify potential issues before they arise, reducing overall defect rates.
Three approaches are commonly used to implement functional testing: ## 2. Reactive Test Approach
- **Definition:** Testers create test cases after the software has been developed, typically focusing on defects after they appear.
- **Key Focus:** Finding defects after development.
- **Challenges:** It can lead to increased maintenance costs as defects are identified late in the process.
- **Key Benefits:** Useful when resources or time are limited, and when defects are not immediately obvious.
---
# Different Types of Test Approaches
## 1. Analytical Test Approach
- **Focus:** Risk-based testing, where the majority of testing efforts are focused on high-priority functionalities.
- **Method:** Testers analyze data and trends to prioritize testing efforts, ensuring important areas are thoroughly tested.
## 2. Model-Based Test Approach
- **Focus:** Creating models that represent software behaviors to generate comprehensive test cases.
- **Method:** Models help derive test scenarios and inputs, making test design more systematic and accurate.
## 3. Methodical Testing Approaches
- **Failure-Based Test Approach:** Focuses on known failures and defects to target areas prone to failure.
- **Experience-Based Test Approach:** Relies on the knowledge and experience of testers to identify potential problem areas not covered by predefined test cases.
## 4. Checklist and Quality Characteristic-Based Test Approaches
- **Checklist Approach:** Uses predefined lists to ensure all necessary aspects of testing are covered.
- **Quality Characteristic-Based Approach:** Focuses on testing non-functional requirements like performance, security, and usability.
## 5. Process or Standard-Compliant Testing Approach
- **Focus:** Ensures testing aligns with industry standards and quality processes for consistent and auditable results.
## 6. Dynamic and Heuristic Approaches
- **Dynamic Testing:** Focuses on validating the software’s functional and non-functional aspects through active test execution.
- **Heuristic Testing:** Based on the intuition and experience of testers to uncover complex defects through exploratory techniques.
## 7. Consultative Approaches
- **Focus:** Collaborative approach involving active engagement with stakeholders to ensure that the testing aligns with business goals and expectations.
## 8. Regression-Averse Test Approach
- **Focus:** Prevents regressions by continuously validating software functionalities that might be impacted by changes or updates.
---
# Choosing the Right Test Approach
Selecting a test approach depends on the project requirements, time, and resources available. Factors to consider:
- **Project constraints** such as time and resources.
- **Stakeholder involvement** in the testing process.
- **Risk factors** to focus on critical areas.
---
# Test Approach Best Practices
- **Effective Communication:** Ensure seamless collaboration between all stakeholders (testers, developers, and business analysts).
- **Understand the Project Context:** Know the project goals, constraints, and requirements to choose the right approach.
- **Flexibility:** Be ready to adapt the test approach based on project changes.
- **Automation:** Use automation to improve efficiency, especially for repetitive tasks like regression testing.
- **Traceability:** Maintain clear traceability between requirements, test cases, and results to ensure complete test coverage.
- Black Box Testing
- White Box Testing
- Gray Box Testing
Visit the following resources to learn more: Visit the following resources to learn more:
- [@article@Functional Testing Approaches and Agile Considerations](https://www.qualitylogic.com/knowledge-center/functional-testing-approaches-agile-considerations/) - [@article@Guide To Test Approach: Different Types With Examples](https://www.lambdatest.com/learning-hub/test-approach)
- [@feed@Explore top posts about Testing](https://app.daily.dev/tags/testing?ref=roadmapsh) - [@feed@Explore top posts about Testing](https://app.daily.dev/tags/testing?ref=roadmapsh)

Loading…
Cancel
Save