Unit-1
Basics of Software Testing and
Testing Methods
Content…
What is software Testing
Need of testing(additional point)
Objectives of testing
Bug Terminology
What is Test case
When to start and Stop testing of
software(Entry and Exit Criteria)
Course Outcome
Co. No. Course Outcome Statement
CI504.1
Use various software testing methods
CI504.2
Design test cases for different types and levels of testing
CI504.3
Create test plan for an application
CI504.4
Create defect report based on bugs identify for given application
CI504.5
Use3 automated testing tool to test software for performance measures
Software Testing
Software Testing is process of executing a program
or application with intent of finding software bugs
and verifying that the software product is fit for use.
IEEE Defines ,”The Process of exercising or evaluating
a system or software by manual or automated means
to verify that satisfies requirements or to identify
differences between expected and actual results.”
Need of Testing
Some Case Study
1)Disney’s Lion king
In 1994 Disney company released its first multimedia
CD-ROM game for children, The Lion King Animated
storybook.
2)Intel Floating-point Division Bug,1994
(4195835/3145727)*3145727-4195835
3)The Y2K(Year 2000)Bug, circa 1974
Objective of S/w Testing
Finding defects which may get created by the
programmer while developing the software.
Gaining confidence in and providing
information about the level of quality.
To prevent defects.
To make sure that the end result meets the
business and user requirements.
Objectives..
To ensure that it satisfies the BRS that is
Business Requirement Specification and SRS
that is System Requirement Specifications.
To gain the confidence of the customers by
providing them a quality product.
Bug Terminology
Bug- Fault, Failure, Error, Defect
A bug refers to an error, fault or flaw in any
computer program or a hardware system.
In software testing a mistake in coding is
called error ,error found by tester is called
defect ,defect accepted by development team
then it is called bug, build does not meet the
requirements then it is failure.
Failure- it is inability of a system or
component to perform required function
according to its specification.
OR
it is defined as condition or stage of software
under which it is unable to perform functions
according to user requirements.
Failure occurs when fault execute.
Error- mistake made by programmer is
known as error.
It happens due to miscalculation of values,
misinterpretation of any values or missing
commands ,wrong syntax etc.
Fault – it is an incorrect step,process,or data
definition in computer program which causes
the program to perform in an unintended
manner.
Defect – it commonly refers to several
troubles with software products ,with its
external behavior or its internal features.
Defect is an error in coding or logic that
causes a program to fail or to produce
incorrect/unexpected result.
Bug
Software bug occurs when one or more of the
following five rules is true
Rule #1-The software does not do something
that the product specification says it should
do.
Rule #2-1-The software does something that
the product specification says it should not
do.
Rule #3- 2-1-The software does something
that the product specification not mention.
Bug Continue…
Rule #4- 1-The software does not do
something that the product specification
does not mention but should.
Rule #5-The software is difficult to
understand, hard to use , slow.
Test Case
To do testing one must have know what to
test ,what will be input, what will be
required(expected) outcome and what will be
precondition for testing.
For all above questions answer is Test case.
Test case is document prepared before doing
actual testing.
It consist a specification of the inputs,
execution conditions, testing procedure, and
expected results that define a single test to
be executed to achieve a particular software
testing objective,
Test Case Continue…
Test Case Format
Teste case ID
Test Case Description
Test Case Precondition
Test Steps
Test Data(input)
Expected Result
Actual Result
Status
Example of test case..
Example
When to Start Testing(Entry Criteria)
Testing starts from the requirement phase
and continue till end of SDLC.
It is always good practice to start testing in
earlier phase of SDLC .
it depends on which development model
being used.
For example in waterfall model formal testing
is conducted in testing phase, in incremental
model testing is performed at the end of
every increment and at end of whole
application tested.
It reduces cost, time to rework and error free
software i.e. delivered to client.
so testing should starts from requirement
gathering phase and one can do testing in
each phase of SDLC.
When to stop testing(Exit Criteria)
It is some what difficult to determine when to stop
testing, as testing is never ending process and no
one can say software is 100 % tested.
Following aspects can consider to stop testing
Testing Deadlines
Completion of test case execution.
Bug rate falls below a certain level and no high
priority bugs are identified.
Management decision.