0% found this document useful (0 votes)
92 views

What Is Software Testing..

Software testing involves verifying that software operates as specified, detecting errors, and validating that the software meets user needs. Testing alone cannot ensure quality, but can provide assurance that the software functions as expected under test conditions. Quality assurance aims to prevent errors by monitoring the entire development process and enforcing standards and procedures, while testing focuses on error detection. The mission of testing is to minimize the risk of product failure by exploring for problems and informing others to support decision making.

Uploaded by

api-3806986
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
92 views

What Is Software Testing..

Software testing involves verifying that software operates as specified, detecting errors, and validating that the software meets user needs. Testing alone cannot ensure quality, but can provide assurance that the software functions as expected under test conditions. Quality assurance aims to prevent errors by monitoring the entire development process and enforcing standards and procedures, while testing focuses on error detection. The mission of testing is to minimize the risk of product failure by exploring for problems and informing others to support decision making.

Uploaded by

api-3806986
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 2

What is Software Testing...?

1. What is Software Testing


2. Why Testing CANNOT Ensure Quality
3. What is Software Quality?
4. What is Quality Assurance?
5. Software Development & Quality Assurance
6. The difference between QA & Testing
7. The Mission of Testing

1. What is Software Testing?


Software testing is more than just error detection;
Testing software is operating the software under controlled conditions, to (1) verify that it behaves
“as specified”; (2) to detect errors, and (3) to validate that what has been specified is what the
user actually wanted.
1. Verification is the checking or testing of items, including software, for conformance and
consistency by evaluating the results against pre-specified requirements. [Verification: Are
we building the system right?]
2. Error Detection: Testing should intentionally attempt to make things go wrong to determine
if things happen when they shouldn’t or things don’t happen when they should.
3. Validation looks at the system correctness – i.e. is the process of checking that what has
been specified is what the user actually wanted. [Validation: Are we building the right
system?]
In other words, validation checks to see if we are building what the customer wants/needs, and
verification checks to see if we are building that system correctly. Both verification and validation
are necessary, but different components of any testing activity.
The definition of testing according to the ANSI/IEEE 1059 standard is that testing is the process of
analysing a software item to detect the differences between existing and required conditions (that
is defects/errors/bugs) and to evaluate the features of the software item.
Remember: The purpose of testing is verification, validation and error detection in order to find
problems – and the purpose of finding those problems is to get them fixed.
2. Why Testing CANNOT Ensure Quality
Testing in itself cannot ensure the quality of software. All testing can do is give you a certain level
of assurance (confidence) in the software. On its own, the only thing that testing proves is that
under specific controlled conditions, the software functioned as expected by the test cases
executed.
3. What is Software “Quality”?
Quality software is reasonably bug-free, delivered on time and within budget, meets requirements
and/or expectations, and is maintainable.
However, quality is a subjective term. It will depend on who the ‘customer’ is and their overall
influence in the scheme of things. A wide-angle view of the ‘customers’ of a software development
project might include end-users, customer acceptance testers, customer contract officers, customer
management, the development organisation’s management/accountants/testers/salespeople,
future software maintenance engineers, stockholders, magazine reviewers, etc. Each type of
‘customer’ will have their own view on ‘quality’ - the accounting department might define quality in
terms of profits while an end-user might define quality as user-friendly and bug-free.
4. What is “Quality Assurance”?
“Quality Assurance” measures the quality of processes used to create a quality product.
Software Quality Assurance (‘SQA’ or ‘QA’) is the process of monitoring and improving all activities
associated with software development, from requirements gathering, design and reviews to coding,
testing and implementation.
It involves the entire software development process - monitoring and improving the process,
making sure that any agreed-upon standards and procedures are followed, and ensuring that
problems are found and dealt with, at the earliest possible stage. Unlike testing, which is mainly a
‘detection’ process, QA is ‘preventative’ in that it aims to ensure quality in the methods & processes
– and therefore reduce the prevalence of errors in the software.
Organisations vary considerably in how they assign responsibility for QA and testing. Sometimes
they’re the combined responsibility of one group or individual. Also common are project teams that
include a mix of testers and developers who work closely together, with overall QA processes
monitored by project managers or quality managers.
5. Quality Assurance and Software Development
Quality Assurance and development of a product are parallel activities. Complete QA includes
reviews of the development methods and standards, reviews of all the documentation (not just for
standardisation but for verification and clarity of the contents also). Overall Quality Assurance
processes also include code validation.
A note about quality assurance: The role of quality assurance is a superset of testing. Its mission is
to help minimise the risk of project failure. QA people aim to understand the causes of project
failure (which includes software errors as an aspect) and help the team prevent, detect, and
correct the problems. Often test teams are referred to as QA Teams, perhaps acknowledging that
testers should consider broader QA issues as well as testing.
6. What’s the difference between QA and testing?
Simply put:
 TESTING means “Quality Control”; and
 QUALITY CONTROL measures the quality of a product; while
 QUALITY ASSURANCE measures the quality of processes used to create a quality product.
7. The Mission of Testing
In well-run projects, the mission of the test team is not merely to perform testing, but to help minimise
the risk of product failure. Testers look for manifest problems in the product, potential problems, and the
absence of problems. They explore, assess, track, and report product quality, so that others in the project
can make informed decisions about product development. It's important to recognise that testers are not
out to "break the code." We are not out to embarrass or complain, just to inform. We are human meters
of product quality.

You might also like