Testing & SDLC Basics
Testing & SDLC Basics
Testing & SDLC Basics
CONCEPTS
By Sandeep Benny
Q. How many QA testers does it take to change a lightbulb?
SDLC
“The period of time that starts when a software product is
conceived and ends when the product is no longer
available for use..”
Waterfall Model Pros
Good for management control
(plan, staff, track)
Easy to understand, easy to
use
Provides structure to
inexperienced staff
Cons
All requirements must be
known upfront
inhibits flexibility-
Deliverables created for each
phase are considered frozen
Little opportunity for customer
to preview the system (until it
may be too late)
V model
V Model
Pros Cons
Testing activities parallel to It’s very rigid and least
development activities. flexible
It saves ample time as testing very costly to implement
begins much early in the Not ideal for small projects
lifecycle. No early prototypes of the
reduces the cost for fixing software are produced.
the defect
develop a quality product
Prototype Model
The reasons of Rapid
Prototyping are :
To increase effective
communication.
To decrease development
time.
To decrease costly mistakes.
To minimize sustaining
engineering changes.
To extend product lifetime
by adding necessary features
and eliminating redundant
features early in the design
Incremental Model
Advantages
Generates working
software quickly and early
during the software life
cycle.
More flexible
Easier to test and debug.
Easier to manage risk.
Disadvantages
Expensive
Spiral Model
Spiral= prototype + waterfall
There are four phases in the
“Spiral Model” : Planning, Risk
Analysis , Engineering, and
Customer Evaluation.
Pros
Focuses attention on early error
elimination
Puts quality objectives up front
Integrates development and
maintenance.
Adaptable model.
Cons
Requires risk assessment expertise
Time consuming
One of the most expensive models.
AGILE Methodology
As the title suggest, focuses on 'agility' and 'adaptability' in
development.
Agile models involve multiple iterative development
schedules that seek to improve the output with every
iteration.
Each iteration goes through the all the steps of design,
coding and testing.
More opportunities to asses the direction of the project
compared to the traditional waterfall model.
Regular meetings are held with the clients to track the
development of the project. It Responds to change over
following a plan.
Working s/w is given more priority over detailed
documentation.
Waterfall v/s Agile
• Waterfall
• Agile
Test Strategy
A strategy is how you are going to address testing for the project. Issues like :
Objective/Scope of Testing
Test Levels (Unit/Module/System/Integration)
Test Types ( Functional/Non-Functional)
Test Environment
Test Automation Approach
Test Tools to be used
Defect Management approach
Defect classification
Test Environment
Environment that is to be created for the testing team to execute
the tests manually as well as by automation. This test environment
is the integration of software, hardware, networks, servers ,
database etc according to the client requirements
Test Case
Test cases is a sequence of steps to test the correct behavior of a
functionality/feature of an application
A test case should have an input description, Test Sequence and
an Expected Output.
Test Reporting:
Test reporting, analysis and Bug fixing management ,The QA
person will track the bug and report in Bug Tracking Tools. Once
the bugs are fixed from development team, Retesting/Regression
testing is done to assure that the bugs are closed.
Testing levels
Unit Testing.
Unit Testing is primarily carried out by the developers themselves.
Deals functional correctness and the completeness of individual
program units.
White box testing methods are employed
Integration Testing.
Integration Testing: Deals with testing when several program units are
integrated.
Regression testing : Change of behavior due to modification or
addition is called ‘Regression’. Used to bring changes from worst to
least.
Incremental Integration Testing : Checks out for bugs which
encounter when a module has been integrated to the existing.
Smoke Testing : It is the battery of test which checks the basic
functionality of program. If fails then the program is not sent for
further testing.
System Testing.
System Testing - Deals with testing the whole program system for its
intended purpose.
Recovery testing : System is forced to fail and is checked out how well
the system recovers the failure.
Security Testing : Checks the capability of system to defend itself
from hostile attack on programs and data.
Load & Stress Testing : The system is tested for max load and extreme
stress points are figured out.
Performance Testing : Used to determine the processing speed.
Installation Testing : Installation & uninstallation is checked out in
the target platform.
Acceptance Testing.
UAT ensures that the project satisfies the customer requirements.
Alpha Testing : It is the test done by the client at the developer’s site.
Beta Testing : This is the test done by the end-users at the client’s site.
Compatibility Testing : Determines how well the product is
substantial to product transition.
Testing Methodologies
Black Box Testing White Box Testing
Examines the application Focuses on the program
external functional behavior. part. Rather than
Done by the testing team. functionality.
Done by development
Knowledge of internal team
coding not required. Knowledge of internal
Performance of the
e..coding required.
application can be tested.
Performance of the
E.g. Equivalence partitioning,
application can’t be tested.
Boundary Value Analysis & E.g. Fault injection, static
Error guessing. testing, flow control tests.
Functional V/s Non Functional tests
2. Assigned:-Once Tester encounter with bug Team lead or Tester will assign it to
Developer team and change status as Assigned
3. Open: Once the Developer start working on the Bug he will make the status as Open.
4. Fixed : This status is set once the issue is fixed or defect solved by developer.
5.Retest:- Once tester will start retesting onto his Bug then he change status as Retest.
6.Closed : After Retest, once assured its no more a defect its status is Closed.
Thank You
Ans. QA testers don't change anything. They just report that it's dark.