Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 16

Software Testing

WHAT IS SOFTWARE TESTING?


Software testing is a process of verifying and validating that a software application or program.
1. Meets the business and technical requirements that guided its design and development 2. Works as expected
PURPOSE

verification

validation

defect finding

Typical Software Testing Process


1-Requirement Analysis:
Software Requirement Specification(SRS) Functional Specification Designed Documents Use case Documents All the above documents are prepared by PM, TL and Dev teams itself with meetings with client or Client itself.

2- Test Planning:
What to test first Technologies to be used who will test and what Methodologies to be used Whether it is manual or automated (If automated then what to be automated) Risk management Which bug tracking tools to be used. etc 3

3- Test environment setup: In this phase of software testing we setup


the test environment in which we have to test the application. Setup the test environment may include-------Network Configuration Software and hardware installation. Meetings with vender's Internet service provider may be the crucial part for for any S/w development Organization.

4-Test Design:
writing the test cases (Manual process) writing test script (Automation process)

5-Test execution :In this phase we execute the test cases . We also run
test script (if applicable) to execute these test cases with the help of automation tools. 4

6-Defect tracking and report: In this phase we track the defects .


through xls sheet. Mantis Bugzilla Zira Quality Center

7- Test report: finally, testing team prepare following documents


Test summary report build release notes note on what is covered and what to cover in next release. Review acceptance. It may be the release note's mail reply from client

Software Development Life Cycle (SDLC)


It is overall process of developing information system through multi step process from investigation of initial requirements.

Types of SDLC:
Waterfall model V model Spiral model Prototype model Rapid application Dev model Agile Methodology

1.Waterfall Model:

Waterfall Strengths:
Easy to understand, easy to use Provides structure to inexperienced staff Sets requirements stability Works well when quality is more important than cost or schedule

Waterfall Deficiencies:
All requirements must be known upfront Little opportunity for customer to preview the system (until it may be too late)

When to use the Waterfall Model:


Requirements are very well known Product definition is stable Technology is understood New version of an existing product

2.V-Shaped SDLC Model:

Testing Life Cycle


Requirements analysis

Test planning

Test development

Test execution

Test reporting

Test result analysis

Defect Retesting

Regression testing

Test Closure

10

Bug Life Cycle

11

Types of Testing
Based on knowledge of system :
Black Box /Behavioral/Manual testing White Box/Glass box/Automation Testing Grey Box

Based on SDLC :
Unit Testing Integration Testing System Testing User Acceptance Testing

Based on purpose :
Functional Testing (Installation,Regression, Upgrade and backward compability testing) Non Functional Testing (Performance, Load and Stress, Security)
12

Some Other Types of testing


Smoke & Sanity Testing Regression & Re-Testing Load & stress Testing Alpha & Beta Testing Monkey & Ad hoc Testing

13

Fields in the Bug Report


Bug No. Program/Module being tested Version & release no. Problem summary Severity/priority Environment Detail Description of Bug Steps to Reproduce Reported by Status Priority

14

The Cost of Bugs


Cost

Specification

Design

Code

Time When Bug Is Found

15

You might also like