Testing Foundation
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
Structural Testing | White Box Testing | Glass Box Testing
Structural testing is the type of testing carried out to test the structure of code. It is also known as White Box testing or Glass Box testing. This type of testing requires knowledge of the code, usually done by the developers.Â
Features of Structural testing :
- Structure testing is applicable to all test levels
- Measures thoroughness through assessment of coverage
- Coverage measurement is usually done by a tool
- This Type of testing approaches can also be applied at the system level based on architecture and hierarchy.
Structural Testing Techniques:
1) Statement Coverage :
Statement coverage technique is aimed at exercising all programming statements with minimal tests. Please refer Statement Coverage for in-depth details.
2) Branch Coverage:
 Branch coverage technique is running a series of tests to ensure that all branches are tested at least once.Please refer Branch Coverage for in-depth details.
3) Path Coverage :
Path Coverage technique corresponds to testing all possible paths which means that each statement and branch are covered. Please refer Path Coverage for in-depth details.
Advantages of Structural Testing:
- Provides a more detailed testing of the software.
- Helps finding out bugs at an early stage.
- Helps in removing dead code.
- It does not require a lot of manual work.
- Not time consuming as it is mostly automated.
Disadvantages of Structural Testing:
- Requires training in the tool used for testing
- Requires knowledge of the code.
- There is also a slight chance that some lines or statements or branches could be missed accidentally.
- expensive.
Structural Testing Tools:
JBehave:Â BDD tool intended to make the BDD process easy and smooth.
Cucumber: BDD testing tool used to verify whether an application has met its requirement
JUnit:Â Used to create a good foundation for developer based testing.
Cfix:Â A robust unit testing framework used to make a developer based test suite easy.
Testing Foundation
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