Testing Foundation
Basics of Software Testing
What is Software Testing?
Objective of Testing
Why is testing necessary?
Common Terms used in Testing
Verification Vs Validations
QA Vs QC
Debugging Vs Testing
Seven Testing Principles
SDLC Vs STLC
Fundamentals of Test Process
Software quality Factors
Software Development Models
Waterfall Model
V models
Iterative Model
Test Levels
Component Testing
Integration Testing
System Testing
Acceptance Testing
Strategies for Integration Testing
Big Bang
Stubs and Driver
Top Down Testing
Bottom Up Testing
Test Types
Functional Testing
Non- Functional Testing
Structural Testing
Re-testing & Regression Testing
Static AND Dynamic Techniques
Static Technique
Dynamic Technique
Static Analysis by Tools
White Box Techniques
Statement Coverage Testing
Branch Coverage Testing
Decision Coverage Testing
Path Coverage
Black Box Techniques
Equivalence Partitioning
Boundary Value Analysis
Decision Table testing
State Transition testing
Experience Based TestingTechniques
Random Testing
Exploratory Testing
Error Guessing
Functional Testing
Integration Testing
Unit Testing
System Testing
Smoke testing
Sanity testing
Regression Testing
Usability Testing
Security Testing
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing
Non Functional Testing
Compatibility testing
Endurance testing
Load testing
Performance testing
Recovery testing
Scalability testing
Stress testing
Volume testing
Test Planning and Estimation
Test Planning
Test Strategies Vs Test Plan
Test Approaches
Risk and Testing
Product Risks
Project Risks
Defect Management
Defect LifeCycle
Severity Vs Priority
What is Software Testing?
Objective of Testing
Why is testing necessary?
Common Terms used in Testing
Verification Vs Validations
QA Vs QC
Debugging Vs Testing
Seven Testing Principles
SDLC Vs STLC
Fundamentals of Test Process
Software quality Factors
Software Development Models
Waterfall Model
V models
Iterative Model
Test Levels
Component Testing
Integration Testing
System Testing
Acceptance Testing
Strategies for Integration Testing
Big Bang
Stubs and Driver
Top Down Testing
Bottom Up Testing
Test Types
Functional Testing
Non- Functional Testing
Structural Testing
Re-testing & Regression Testing
Static AND Dynamic Techniques
Static Technique
Dynamic Technique
Static Analysis by Tools
White Box Techniques
Statement Coverage Testing
Branch Coverage Testing
Decision Coverage Testing
Path Coverage
Black Box Techniques
Equivalence Partitioning
Boundary Value Analysis
Decision Table testing
State Transition testing
Experience Based TestingTechniques
Random Testing
Exploratory Testing
Error Guessing
Functional Testing
Integration Testing
Unit Testing
System Testing
Smoke testing
Sanity testing
Regression Testing
Usability Testing
Security Testing
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing
Non Functional Testing
Compatibility testing
Endurance testing
Load testing
Performance testing
Recovery testing
Scalability testing
Stress testing
Volume testing
Test Planning and Estimation
Test Planning
Test Strategies Vs Test Plan
Test Approaches
Risk and Testing
Product Risks
Project Risks
Defect Management
Defect LifeCycle
Severity Vs Priority
V Model in SDLC | Verification & Validation
- V Model can also be called as Sequential Development Model .
- V Model in software engineering came up in order to overcome the drawback of waterfall Model .
- In V Model process executes in a sequential manner in V-shape.
- V –Model is based on the association of a testing phase for each corresponding development stage.
- In V –Model development of each step directly associated with the testing phase
- SDLC V Model contains Verification phases on one side of the Validation phases on the other side.
- Verification and Validation process is joined by coding phase in V-shape. So it is called as V-Model.
- In V Model, testing team involves in the early phases of SDLC and Testing starts in early stages of product development which avoids downward flow of defects.
Phases of Verification of V-model:
1) Business requirements:Â
- It is a step where product Business requirements understood from the customer’s side so the requirements are collected and analyzed.
- Requirements reviews is the verification Activity
- Creation of UAT test cases is the validation activity.
2) System Design or High-level design:
- The team studies and investigates on how the requirements could be implemented and how team can implement technically.
- In this stage test team analyse and interpret the business of the proposed system by studying the user requirements document.
- System Design reviews is the verification activity
- System test plan, test cases, and traceability metrics is the validation activitiesÂ
3) Architecture Design:
- System design is divided further into modules taking up different functionalities.
- The data transfer and communication between the modules or systems is clearly understood.
- The integration-testing model is carried out this phase.
- Review HLD is the verification activity.
- Write Integration test plan and test cases are the validation activity.Â
4) Module Design or low level design :
- In this phase, the system breaks down into small modules.
- The detailed design of the modules is specified.
- Methods, classes, data types, interfaces, etc. are all finalised in this phase.
- Review LLD is the verification activity.
- Write Functional test plan and test cases is the validation activity.Â
5) Coding or implementation:
- Once the coding language is finalised, coding is started with some guidelines and standards.
- Code review, test cases review is the verification activity
- Creation of functional test cases is the validation activity.
Phases of Validation of V-model:
Unit Testing:
- Unit testing is carried out during the development of module design.
- Unit test cases are executed for removing bugs that are found in code at the development phase.
- Unit Test Plans are developed during the module design phase.
- Unit testing verifies that each module can function correctly
Integration Testing:
- Integration Test Plan is developed during the Architectural Design Phase.
- Integration testing is carried out where the integration of modules in the system is tested.
System Testing:
- System Tests Plans are developed during System Design Phase.
- The actual and full testing of the application takes place.
- The traceability metrics are updated to check the coverage and risk mitigated.
Acceptance Testing:
- Acceptance testing is related to the business requirement analysis part.
- Acceptance testing is done to validate that the business requirements are met in the user environment.
- Functional testing and sometimes nonfunctional testing are also carried out in this phase.
Advantages of V Model:
- Investment and re-work is less.
- Testing is involved in every stage so produced quality product.
- Test team will be ready with the test cases by the time developers release the software which in turns saves a lot of time
- Easy to manage as each phase has well defined objectives and goals
Disadvantages of V Model:
- It is not a good for a complex project.
- Initial investment is more because test team involves right from the early stage.
- If any changes happen in the middle, then the testing documents and other related documents needs to be updated
When to use the V-Model??
- For small to medium sized projects where requirements are clearly defined and fixed.
- Chosen when sample technical resources are available with essential technical expertise.
Recommended Articles:Â Â
Â
Testing Foundation
Basics of Software Testing
What is Software Testing?
Objective of Testing
Why is testing necessary?
Common Terms used in Testing
Verification Vs Validations
QA Vs QC
Debugging Vs Testing
Seven Testing Principles
SDLC Vs STLC
Fundamentals of Test Process
Software quality Factors
Software Development Models
Waterfall Model
V models
Iterative Model
Test Levels
Component Testing
Integration Testing
System Testing
Acceptance Testing
Strategies for Integration Testing
Big Bang
Stubs and Driver
Top Down Testing
Bottom Up Testing
Test Types
Functional Testing
Non- Functional Testing
Structural Testing
Re-testing & Regression Testing
Static AND Dynamic Techniques
Static Technique
Dynamic Technique
Static Analysis by Tools
White Box Techniques
Statement Coverage Testing
Branch Coverage Testing
Decision Coverage Testing
Path Coverage
Black Box Techniques
Equivalence Partitioning
Boundary Value Analysis
Decision Table testing
State Transition testing
Experience Based TestingTechniques
Random Testing
Exploratory Testing
Error Guessing
Functional Testing
Integration Testing
Unit Testing
System Testing
Smoke testing
Sanity testing
Regression Testing
Usability Testing
Security Testing
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing
Non Functional Testing
Compatibility testing
Endurance testing
Load testing
Performance testing
Recovery testing
Scalability testing
Stress testing
Volume testing
Test Planning and Estimation
Test Planning
Test Strategies Vs Test Plan
Test Approaches
Risk and Testing
Product Risks
Project Risks
Defect Management
Defect LifeCycle
Severity Vs Priority
What is Software Testing?
Objective of Testing
Why is testing necessary?
Common Terms used in Testing
Verification Vs Validations
QA Vs QC
Debugging Vs Testing
Seven Testing Principles
SDLC Vs STLC
Fundamentals of Test Process
Software quality Factors
Software Development Models
Waterfall Model
V models
Iterative Model
Test Levels
Component Testing
Integration Testing
System Testing
Acceptance Testing
Strategies for Integration Testing
Big Bang
Stubs and Driver
Top Down Testing
Bottom Up Testing
Test Types
Functional Testing
Non- Functional Testing
Structural Testing
Re-testing & Regression Testing
Static AND Dynamic Techniques
Static Technique
Dynamic Technique
Static Analysis by Tools
White Box Techniques
Statement Coverage Testing
Branch Coverage Testing
Decision Coverage Testing
Path Coverage
Black Box Techniques
Equivalence Partitioning
Boundary Value Analysis
Decision Table testing
State Transition testing
Experience Based TestingTechniques
Random Testing
Exploratory Testing
Error Guessing
Functional Testing
Integration Testing
Unit Testing
System Testing
Smoke testing
Sanity testing
Regression Testing
Usability Testing
Security Testing
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing
Non Functional Testing
Compatibility testing
Endurance testing
Load testing
Performance testing
Recovery testing
Scalability testing
Stress testing
Volume testing
Test Planning and Estimation
Test Planning
Test Strategies Vs Test Plan
Test Approaches
Risk and Testing
Product Risks
Project Risks
Defect Management
Defect LifeCycle
Severity Vs Priority