2. Targeted Audience
• Anybody who is new to testing and want to know the Test
Life Cycle
• Testers who has experience in Adhoc -Testing but want to
learn the formal processes and procedures in Software
Testing
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
1
3. Course Content
•
•
•
•
•
•
•
•
•
•
Define Software Testing?
Why Software Testing and a specialist for Testing?
Software Testing in SDLC
Test Planning
Test Design
Test Execution and Process
V- Model
Bug Life Cycle
Testing Documentation and Formats.
Guide Lines and Check Lists
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
2
4. What is Software Testing?
• Testing is the process of proving that a piece of software
works as specified
• IEEE Terminology: An examination of the behavior of the
program by executing on sample data sets
• Testing comprises of a set of planed activities which result
in identification of defect if any
• Testing involves operation of a system or application under
controlled conditions and evaluating the results.
• The goal of the testing activity is to find
– As many Errors as possible before the user of the software
finds them.
– To determine whether a program component meets its
requirements.
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
3
5. Why Software Testing?
•
•
•
•
To uncover defects in the Software
To analyse the reliability of the Software
To ensure that Software works as user expected
Early detection of defects and thus to reduce the cost &
deliver the Software with acceptable quality
• To collect the Metrics which will help to plan the future
projects effectively.
Why Software Testers?
• One can’t find his own faults so as Developers
• A fresh brain is the best brain
• To have systematic and complete testing
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
4
6. Software Testing in SDLC
Business Requirements
Technical
Feasibility Analysis
Schedule
Financial
Project Plan
System Requirement
System Requirements
Functional Requirements
UI
Functional
Environment
Performance
Security
Test Plan
Design
UI Design
DB Design
App Design
High Level Design
Test Case Design
Coding
Traceability
Low Level Design
Matrix
Testing
Release and Maintenance
Problems
Change Requests
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
5
7. Test Planning
•
•
A document to describe the plan for “What to Test?”,
“How to Test?” and “When to Test?”
Test Plan Template
–
–
–
–
–
–
–
–
Title
Revision History
Objective of the Document
Scope of the Document
Objective of Testing
Brief Description of the Project
Test Environment
Critical Functionalities
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
6
8. Test Planning (Continues..)
•
Test Plan Template (Continues)
–
–
–
–
–
–
–
–
Functionality not to be tested
Test data requirement and collection
Automation Analysis
Test Strategy
Training Plan( Technical/ Domain/ Softskill)
Effort Estimation
Resource Requirement ( HR/SW/HW)
Scheduling ( Detailed schedule for all phases of Testing)
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
7
9. Test Planning (Continues..)
•
Test Plan Template (Continues)
–
–
–
–
–
–
–
–
–
Input Criteria
Exit Criteria Acceptance Criteria
Test Suspension & Resumption Criteria
Test Completion Criteria
Test Deliverables
Bug Classifications
Bug Tracking
Test Metrics to be collected
Documents Referred
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
8
10. Test Design
• The process of identifying the test conditions and
preparing test cases
• Test Design involves:
– Identifying the Test Conditions
– Preparation of Test Scenarios
– Preparation of Test Cases
– Preparation of Test Scripts
– Preparation Traceability Matrix (RTM)
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
9
11. Test Design (Continues..)
• Test Condition: Every testable requirement is
considered as a Test Condition
• Test Scenario: The Test Condition which covers
one high level requirement or business
transaction is called as Test Scenario
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
10
12. Test Design (Continues..)
• Test Case: The set of test steps to be performed along
with expected result to test a low level requirement is
called as Test Case
• Test Scripts: The programs developed to test the
application are called as Test Scripts
• Traceability Matrix: The mapping developed between
different information sources like :
Requirements
Test cases
Test Scripts
Defects
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
11
13. Test Execution& Process - 1
• Test Process Depends on the Project
Development Model
• Projects are:
– Development Projects
• Classical Development
• Incremental Development
• Modular Development
– Maintenance Projects
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
12
14. Test Execution& Process - 2
• For Classical Development Model Projects
AUT
TESTING
DEVELOPMENT
Sanity Testing
System Testing
System
Development
Regression Testing
Acceptance Testing
Release&
Maintenance
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
13
15. Test Execution& Process - 3
• For Incremental Development Model Projects
UUT/AUT
Sanity Testing
Phase1 Phase2
Phase3
Phase 4
System Testing
TESTING
DEVELOPMENT
Module Level Testing
Regression Testing
Acceptance Testing
Release&
Maintenance
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
14
16. Test Execution& Process - 3
• For Modular Development Model Projects
UUT/AUT
System
Development
Sanity Testing
Integration Testing
System Testing
Mod1
Mod2
TESTING
DEVELOPMENT
Module Level Testing
Mod3
Regression Testing
Acceptance Testing
Release&
Maintenance
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
15
17. Test Execution& Process - 4
• For Maintenance Projects
AUT
Enhancement
Existing
Application
Regression Testing
TESTING
Re-Testing
CR
DEVELOPMENT
Sanity Testing
Acceptance Testing
Release&
Maintenance
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
16
18. V- Model
Business
Requirements
Acceptance
Testing
Prepare Acceptance Test Plan
Verification
Validation
Systems
Requirements
Prepare System Test Plan
System Testing
Verification
Validation
High Level
Deign
Verification
Low Level
Design
Verification
Prepare Integration
Test Plan
Prepare Unit
Test Plan
Integration
Testing
Validation
Module/Unit
Level Testing
Validation
Coding
Transition
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
17
19. Advantages of V Model over Water Fall Model
•
V Model:
– A detailed model with description of all the phases
– Allows parallel test activities during development activities
– Depicts the dependency of Test Phases on other
development phases
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
18
20. V-Shaped Model
• The high-level design phase
• V-Shaped life cycle is a
focuses on system architecture
sequential path of execution of
and design. An integration test
processes. Each phase must be
plan is created in this phase.
completed before the next phase
begins
• The low-level design phase is
where the actual software
• Business Requirements (BRS)
components are designed, and
begin the life cycle model.
unit test plan is created in this
Acceptance Test Plan is created
phase as well.
based on Business
Requirements.
• The implementation phase is,
again, where all coding takes
• After BRS, System Requirements
place. Once coding is complete,
will be collected. Based SRS,
the path of execution continues
System Test Plan is created. The
up the right side of the V where
test plan focuses on meeting the
the test plans developed earlier
functionality specified in the
are now put to use.
requirements gathering.
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
19
21. Verification and Validation
Verification and Validation (V&V) is a Software Testing
activity to enhance quality of the software being built. It is
planned and conducted systematically through out the
software lifecycle.
•
Verification: Are we building the Project right?
–
•
Verification is the checking or testing of items, including software, for
conformance and consistency with an associated specification.
Reviews, Analysis, Meetings and walkthroughs.
Validation: Are we building the right product?.
–
Validation begins when most or all software functions are as per
customer expectations. Validation testing provides final occurrence
that the software meets all functional, behavioral and performance
requirements. Usually testing is used for this activity.
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
20
22. Test Deliverables
•
•
•
•
•
•
•
•
•
•
•
Test Plan
Testing Strategy
Test Scenario Documentation
Test Cases Documentation
Test Scripts
Requirement Traceability Matrix
Test Data
Test Results
Test Summary Report
Release Notes
Tested Build
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
21
23. Bug Life Cycle
• The flow of Bug Status from Time to Time
Limitation (D)
New (T)
Reject (D)
Duplicate (D)
Open (D)
Differed (D)
Re-Open (T)
Fixed (D)
Closed (T)
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
22
24. Testing Documentation and Formats
• Attach the below Templates
– System Test Plan
– Detailed Test Plan/ Test Scenario
– TestCase Template
– Test Execution Report
– Bug Template
– Traceability Matrix
– QA Release Notes
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
23
25. Guide Lines and Check Lists
• Attach the check list for below:
– Test Case review checklist
– Web Test checklist
NCT-Mind Q Proprietary 3/12/2008 5:38:45 PM
24