What Are The Software Testing Concepts?
What are the software testing concepts? Before you learn
about software testing concepts you should have some idea about
the technology industry. In the last three decades technology
has grown manifold and at present is one of the largest and
most popular industries in the world. A large number of
technological devices are invented on a daily basis and these
have become part and parcel of our lives. All the developments
that are taking place around us today are mainly due to
technological equipments and tools. There is continuous demand
for better technological equipments which increase efficiency
and productivity.
Prior to understanding the software testing concepts, you
must be aware of the software testing procedure and its various
functions. Any and every new software product is invariably
subjected to some form of software testing process for the
following reasons.
1. The software system developed should be free from errors
and should not cause any malfunctioning of the system at the
manufacturer’s site
2. The software developed by any individual or organization is
bound to have bugs which cannot be found at the programming
stage. Such errors can occur due to miscommunication or no
communication, complexity of software, errors in programming,
changing specifications, time pressures etc. Such errors can
come out during testing and not on live use.
The software testing process ensures that the product is
credible and the quality of software is high.
A common misconception many people hold is that the goal of
testing is to eliminate all bugs. The bug is defined as a
defect, or a function that does not work as defined in the
Requirements Definition document. But in many cases, there is
no Requirements Definition; the RD is quite general and does
not go to the level of defining all operational functions. So
if there is no RD, or only a high level RD, it is not possible
to even know what the low level functions should do exactly.
Management decides when testing should stop and production
begin; this is not decided by testers. In other words,
Management can take a decision to put the product in the market
even with certain defects stating that the probability of going
wrong with such errors is low. The job of a software tester is
to find defects; the goal of the testing project is to reduce
the risk, not produce perfect software.
Every system or project has a "life cycle": a birth, life,
and death. The software testing concepts also have
similar stages in its life. These are listed below.
 |
Birth – Vision Statement |
 |
Basic needs – Business Requirements |
 |
Specific needs – Functional Requirements |
 |
Detailed design – System design document |
 |
Making it – Development |
 |
Basic testing – Unit testing |
 |
Testing related things – System testing |
 |
Bringing parts together – Integration testing (
completion of theoretical phase) |
 |
Is it what we wanted – Acceptance testing |
 |
Use it – Production |
 |
Death – De-commissioned |
The software testing has to follow the above stages of
development. In addition to debugging, the software testing
finds out whether the new product under development will be
acceptable to the target audience. This particular concept of
the software testing process is also a vital one.
There are a number of websites which give details on
software testing test cases and you are advised to browse
through them on the Internet.
|