You are on page 1of 6

Software testing unit 1

Definitions:
Software quality: Software quality product is defined in term of its fitness of
purpose. Quality software meets the requirements expected of the software,
consistently and predictably.Portability, usability, reusability , correctness are
the attributes of quality software.
Software Testing: 1) Software Testing is the process of finding bugs in the
software & make the software bug free. 2) Software testing is an investigation
conducted to provide stakeholders with information about the quality of the
software product or service under test.
Bug: The presence of error at the time of execution of the software.
Error: It is a human action that produces the incorrect result that produces a
fault.
Fault: State of software caused by an error.
Defect: issue in coding or logic that causes a program to malfunction or to
produce unexpected results
Failure: Deviation of the software from its expected result. It is an event.
Pesticide paradox: more you test software, the more immune it becomes to
your tests.
To overcome the pesticide paradox, software testers must continually write
new and different tests to exercise different parts of the program and find
more bugs.
Verification is the process confirming that something—software—meets its
specification.
Validation is the process confirming that it meets the user’s requirements
A software quality assurance is a process to create and enforce standards and
methods to improve the development process and to prevent bugs from ever
occurring.
Differentiation:
Testing Debugging

Testing is the process to find Debugging is the process of correcting the


bugs and errors. bugs found during testing.

Testing is the display of errors. Debugging is a deductive process.

Debugging is done by either programmer


Testing is done by the tester.
or the developer.

Testing can be manual or Debugging is always manual. Debugging


automated. can’t be automated.

Testing can be done by insiders Debugging is done only by insiders. An


as well as outsiders. outsider can’t do debugging.

Testing is initiated after the code Debugging commences with the


is written. execution of a test case.

Role of testing:
1) Inception Phase: to identify the necessities of project
2) Elaboration Phase: to identify how the project is planned
3) Construction Phase: to know that all requirements are being traced
through test cases.
4) Transition Phase: if any defects or bugs are found then they are re tested
and it goes under regression testing phase.

Objective of testing:
1)Objective of a software tester is to find defects
2) To make sure that the end result meets the business and user requirements.
find them as early as possible
3) make sure that defects get fixed
4) Gaining confidence about the level of quality.
Need of testing:
 To identify defects
 To reduce flaws in the component or system
 Increase the overall quality of the system

Testing priniciples:
o Testing shows the presence of defects
o Exhaustive Testing is not possible
o Pesticide Paradox
o Testing is context-dependent
o Absence of errors fallacy

Attributes of good tester


1. They are explorers: Software testers aren’t afraid to venture into
unknown situations. They love to get a new piece of software, install it
on their PC, and see what happens.
2. They are creative: Testing the obvious isn’t sufficient for software
testers. Their job is to think up creative and even off-the-wall approaches
to find bugs
3. They are (mellowed) perfectionists: They strive for perfection, but they
know when it becomes unattainable and they’re OK with getting as close
as they can.
4. They exercise good judgment: Software testers need to make decisions
about what they will test, how long it will take, and if the problem
they’re looking at is really a bug

When to start and stop:


1) Entry and Exit criteria are required to start and end the testing.
2) By defining exit and entry criteria you define your boundaries.
3) Entry Criteria: a) defines what all need to start the testing, b)a set of
conditions that permits a task to perform.
4) Exit Criteria: a set of conditions based on which you can say this particular
task is finished.
8.1: Entry Criteria Condition:
1) Functional and Business requirement should be cleared,
confirmed and approved.
2) Test plan, test cases reviewed and approved.
3) Test environment/test ware gets prepared.
4) Test data should be available
5) Availability of application
6) QA/Tester gets significant knowledge of application.
7) Resources should be ready
8) All developed code must be unit tested.
8.2: Exit Criteria Condition:
1) Deadlines (release deadlines, testing deadlines, etc.)
2) Test cases completed with certain percentage passed
3) Test budget depleted
4) All defects are fixed or closed
5) Closure reports are singed off

V Model
1. V- model means Verification and Validation model.
2. Just like the waterfall model, the V-Shaped life cycle is a sequential path
of execution of processes.
3. Each phase must be completed before the next phase begins.
4. The V Model splits testing into two parts: a) Design b) Execution
5. Test Design is done early, while test Execution is done in the end.
6. There are different types of tests for each phase of life cycle

1) Requirements: before development is started, a system test plan is


created, The test plan focuses on meeting the functionality specified in
the requirements gathering.
2) The high-level design (HLD): phase focuses on system architecture and
design, An integration test plan is created in this phase as well in order to
test the pieces of the software systems ability to work together.
3) The low-level design (LLD) : phase is where the actual software
components are designed. Class diagram with all the methods and
relation between classes comes under LLD. Component tests are created
in this phase as well.
4) The implementation: phase is where all coding takes place. Once
coding is complete, the path of execution continues up the right side of
the V where the test plans developed earlier are now put to use.
5) Coding: This is at the bottom of the V-Shape model. Module design is
converted into code by developers. Unit Testing is performed by the
developers on the code written by them.

You might also like