Unit 1
Unit 1
1.Waterfall Model
2. Iterative Model
3. V Model
4. Agile Model’
Waterfall Model
Iterative Model
V Model
Agile Model
Testing Process
•Testing is an important aspect of the software development life cycle.
•It is basically the process of testing the newly developed software, prior to its actual
use.
•The program is executed with desired input(s) and the output(s) is/are observed
accordingly.
•The observed output(s) is/are compared with expected output(s). If both are same, then
the program is said to be correct as per specifications, otherwise there is something
wrong somewhere in the program.
•Testing is a very expensive process and consumes one-third to one-half of the cost of a
typical development project.
What is Software testing
Testing is a process of exercising a program with the
intention of finding errors.
Continuous Monitoring
Testing is done in different forms at every phase of
SDLC
•Reviewing the design in the design phase with the intent to improve the design
is also considered as testing.
Normal
Valid
Positive conditions.
It checks if the software gracefully manages errors and does not crash
or produce unexpected results.
Alpha Testing
The alpha tests are conducted at the developer’s site by the customer.
“a” ?
ToUpper()
Expected
Input Output
“a” “A”
ToUpper()
Expected
Input Output
“A” ?
ToUpper()
Expected
Input Output
“1” ?
ToUpper()
Expected
Input Output
“@” ?
Expected
Input Output
“?” ?
Test Case Format
A typical test case format includes the following elements:
1. Test Case ID
2. Test Case Name
3. Test Objective
4. Preconditions
5. Test Steps
6. Expected Results
7. Actual Results
8. Status
9. Notes
A test case is like a recipe for testing software.
It's a set of clear instructions that explain what to do, what to expect, and
how to check if a specific part of the software works correctly.
Think of it as a checklist that helps make sure the software does what it's
supposed to do.
Quality
Software quality measures how well
software is designed (quality of design),
and how well the software conforms to
that design (quality of conformance)
Quality is meeting the requirements
expected of the software, consistently and
predictably
Error, Defect, Failure and bug
Error: Any mistake in a program called error.
Defect: Mistakes found by tester during system
testing called defect.
Failure: Executing defect code, sometimes will
produce wrong results, causes failure.
Bug: Reported defect is accepted by developer to
resolve called bug.
A software bug is the common term used to describe
an error, flaw, mistake, failure, or fault in a computer
program or system that produces an incorrect or
unexpected result, or causes it to behave in
unintended ways.
Most bugs arise from mistakes and errors made by
people in either a program's source code or its
design, and a few are caused by compilers
producing incorrect code.
A program that contains a large number of bugs,
and/or bugs that seriously interfere with its
functionality, is said to be buggy
Testing Process
Organize Project involves creating a System Test Plan,
Schedule & Test Approach, and requesting/assigning
resources.
Design/Build System Test involves identifying Test
Cycles, Test Cases, Entrance & Exit Criteria, Expected
Results, etc. In general, test conditions/expected results
will be identified by the Test Team in conjunction with the
Project Business Analyst or Business Expert. The Test Team
will then identify Test Cases and the Data required. The
Test conditions are derived from the Business Design and
the Transaction Requirements Documents
Design/Build Test Procedures includes setting up
procedures such as Error Management systems and Status
reporting, and setting up the data tables for the Automated
Testing Tool
. Build Test Environment includes
requesting/building hardware, software and data set-ups.
Execute Project Integration Test - See Section 3 - Test
Phases & Cycles
Execute Operations Acceptance Test - See Section 3 -
Test Phases & Cycles
Signoff - Signoff happens when all pre-defined exit
criteria have been achieved
Software Testing Life Cycle
Phases Activities Outcome
Planning Test plan, Refined
Create high level test plan
Specification
Analysis Create detailed test plan,
Revised Test Plan, Functional
Functional Validation Matrix,
validation matrix, test cases
test cases
Designs test cases are revised; select Revised test cases, test data
which test cases to automate sets, sets, risk assessment sheet
Construction Test procedures/Scripts,
Scripting of test cases to
Drivers, test results, Bug
automate,
reports.
Testing cycle Complete testing cycles Test results, Bug Reports
Final testing Execute remaining stress and
Test results and different
performance tests, complete
metrics on test efforts
documentation
Post implementation Plan for improvement of
Evaluate testing processes
testing process