2. www.vskills.in Page 7
INTRODUCTION & OVERVINTRODUCTION & OVERVINTRODUCTION & OVERVINTRODUCTION & OVERVIEWIEWIEWIEW
IntroductiIntroductiIntroductiIntroductionononon
Software testing is an investigation conducted to provide stakeholders with information about the quality of the
product or service under test Software testing also provides an objective, independent view of the software to
allow the business to appreciate and understand the risks of software implementation. Test techniques include,
but are not limited to, the process of executing a program or application with the intent of finding software
bugs.
Software testing can also be stated as the process of validating and verifying that a software
program/application/product:
• meets the business and technical requirements that guided its design and development;
• works as expected; and
• can be implemented with the same characteristics.
Software testing, depending on the testing method employed, can be implemented at any time in the
development process. However, most of the test effort occurs after the requirements have been defined and
the coding process has been completed. As such, the methodology of the test is governed by the software
development methodology adopted.
Different software development models will focus the test effort at different points in the development
process. Newer development models, such as Agile, often employ test driven development and place
an increased portion of the testing in the hands of the developer, before it reaches a formal team of
testers. In a more traditional model, most of the test execution occurs after the requirements have been
defined and the coding process has been completed
OverviewOverviewOverviewOverview
Testing can never completely identify all the defects within software. Instead, it furnishes a criticism or
comparison that compares the state and behavior of the product against oracles—principles or mechanisms by
which someone might recognize a problem. These oracles may include (but are not limited to) specifications,
contracts, comparable products, past versions of the same product, inferences about intended or expected
purpose, user or customer expectations, relevant standards, applicable laws, or other criteria.
Every software product has a target audience. For example, the audience for video game software is completely
different from banking software. Therefore, when an organization develops or otherwise invests in a software
product, it can assess whether the software product will be acceptable to its end users, its target audience, its
purchasers, and other stakeholders. Software testing is the process of attempting to make this assessment.
HistoryHistoryHistoryHistory
The separation of debugging from testing was initially introduced by Glenford J. Myers in 1979. Although his
attention was on breakage testing ("a successful test is one that finds a bug") it illustrated the desire of the
software engineering community to separate fundamental development activities, such as debugging, from that
of verification. Dave Gelperin and William C. Hetzel classified in 1988 the phases and goals in software testing
in the following stages:
• Until 1956 - Debugging oriented
• 1957–1978 - Demonstration oriented
• 1979–1982 - Destruction oriented
4. www.vskills.in Page 9
Questions:
1. Software testing can also be stated as the process of validating and verifying that a software
program/application/product:
a. meets the business and technical requirements that guided its design and development;
b. works as expected; and
c. can be implemented with the same characteristics.
d. All of the above
e. None of the above
2. Most of the test execution occurs _________ the requirements have been defined and the coding process
has been completed
a. Before
b. After
3. Once testing is done, we can completely identify all the defects within software
a. True
b. False