Software testing is a structured process that helps ensure the quality and reliability of software applications. Hereβs a simplified hierarchy to guide you through the different testing types and methodologies used in the software development lifecycle.
Techniques:
- ποΈ Structural Techniques:
- Statement Testing
- Condition Testing
- Branch Testing
- Path Testing
- π οΈ Functional Techniques
β οΈ Error-Based Techniques
Testing Methods:
- π³ White Box Testing
- β« Black Box Testing
- π¨ Gray Box Testing
Approaches:
- π· Big Bang Approach
- π Incremental Approach:
- Top-down Integration
- Bottom-up Integration
- Mixed/Sandwich Integration
Other Testing Types:
- β‘ Adhoc Testing
- β»οΈ Regression Testing
- π Retesting
- π§Ή Sanity Testing
- π¨ Smoke Testing
- π§ Parallel Testing
- π Benchmark Testing
- π End-to-End Testing
- β³ Reliability Testing
Learn more about Integration Testing
Types of Testing:
- βοΈ Functional Testing
- π§© Non-Functional Testing:
- π¨ User Interface Testing
- π§± Object Properties Testing
- π― Error Guessing Testing
- ποΈ Input Domain Testing
- π Database Testing
- π’ Calculation Testing
- π Links & URLs Testing
Learn more about System Testing
Phases:
- π οΈ Alpha Testing
- π¬ Beta Testing
Non-Functional Testing Areas:
- π¦ Load Testing
- π₯ Stress Testing
- π Soak Testing
- π Accessibility Testing
- π Scalability Testing
Learn more about Acceptance Testing
- π Authentication
- π Authorization/Permission
- πͺ Cookies Testing
- π Session Testing
- π Encryption/Decryption
- π‘οΈ Penetration (Pen) Testing
-
π§βπ» Usability Testing
-
πΎ Memory Leakage Testing
-
π½ Volume Testing
-
π₯οΈ Compatibility Testing
-
π§ Configuration Testing
-
π οΈ Recovery Testing
-
π¦ Installation Testing
-
βοΈ Compliance Testing
-
π Documentation Testing
-
π Interoperability Testing
βββ README.md # Main overview of the repository
βββ unittesting.md # Unit testing section
β βββ ποΈ Structural Techniques:
β β βββ Statement Testing
β β βββ Condition Testing
β β βββ Branch Testing
β β βββ Path Testing
β βββ π οΈ Functional Techniques
β βββ β οΈ Error-Based Techniques
β βββ ...
β
βββ integrationtesting.md # Integration testing section
β βββ π· Big Bang Approach
β βββ π Incremental Approach:
β β βββ Top-down Integration
β β βββ Bottom-up Integration
β β βββ Mixed/Sandwich Integration
β βββ β‘ Other Testing Types:
β βββ Adhoc Testing
β βββ Regression Testing
β βββ Retesting
β βββ Sanity Testing
β βββ Smoke Testing
β βββ Parallel Testing
β βββ Benchmark Testing
β βββ End-to-End Testing
β βββ Reliability Testing
β
βββ systemtesting.md # System testing section
β βββ βοΈ Functional Testing
β βββ π§© Non-Functional Testing:
β βββ π¨ User Interface Testing
β βββ π§± Object Properties Testing
β βββ π― Error Guessing Testing
β βββ ποΈ Input Domain Testing
β βββ π Database Testing
β βββ π’ Calculation Testing
β βββ π Links & URLs Testing
β
βββ acceptancetesting.md # Acceptance testing section
β βββ π οΈ Alpha Testing
β βββ π¬ Beta Testing
β βββ π¦ Non-Functional Testing Areas:
β βββ Load Testing
β βββ Stress Testing
β βββ Soak Testing
β βββ Accessibility Testing
β βββ Scalability Testing
β
βββ testingmethods.md # Optional: A file for testing methods
β βββ π³ White Box Testing
β βββ β« Black Box Testing
β βββ π¨ Gray Box Testing
β
βββ additionalfocusareas.md # Additional focus areas
βββ π‘οΈ Security Testing
β βββ π Authentication
β βββ π Authorization/Permission
β βββ πͺ Cookies Testing
β βββ π Session Testing
β βββ π Encryption/Decryption
β βββ π‘οΈ Penetration (Pen) Testing
β
βββ π Performance Testing
β βββ π§βπ» Usability Testing
β βββ πΎ Memory Leakage Testing
β βββ π½ Volume Testing
β βββ π₯οΈ Compatibility Testing
β
βββ βοΈ Other Testing
βββ π§ Configuration Testing
βββ π οΈ Recovery Testing
βββ π¦ Installation Testing
βββ βοΈ Compliance Testing
βββ π Documentation Testing
βββ π Interoperability Testing
This hierarchy helps beginners understand the wide array of testing techniques and methods used in software development, ensuring comprehensive coverage of both functional and non-functional aspects of a system.