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

1what Is Software Testing - Definition, Basics & Types in Software Engineering

Software testing is a method to check if a software product matches expected requirements and is defect-free. It involves manually or automatically executing components to evaluate properties of interest. Testing is important because software bugs can be expensive or dangerous if undetected. The benefits of testing include being cost-effective, improving security and quality, and increasing customer satisfaction. There are different types of testing like functional, non-functional, and maintenance testing.

Uploaded by

Florin Condurat
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
86 views

1what Is Software Testing - Definition, Basics & Types in Software Engineering

Software testing is a method to check if a software product matches expected requirements and is defect-free. It involves manually or automatically executing components to evaluate properties of interest. Testing is important because software bugs can be expensive or dangerous if undetected. The benefits of testing include being cost-effective, improving security and quality, and increasing customer satisfaction. There are different types of testing like functional, non-functional, and maintenance testing.

Uploaded by

Florin Condurat
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

10/27/21, 10:53 PM What is Software Testing?

Definition, Basics & Types in Software Engineering

What is Software Testing? Definition, Basics & Types


in Software Engineering
By Thomas Hamilton Updated October 8, 2021

Software Testing
Software Testing is a method to check whether the actual software product matches
expected requirements and to ensure that software product is Defect free. It involves
execution of software/system components using manual or automated tools to evaluate one
or more properties of interest. The purpose of software testing is to identify errors, gaps or
missing requirements in contrast to actual requirements.

Some prefer saying Software testing definition as a White Box and Black Box Testing. In
simple terms, Software Testing means the Verification of Application Under Test (AUT). This
Software Testing course introduces testing software to the audience and justifies the
importance of software testing.

In this Software Testing tutorial, you will learn basics of software testing like:

What is Software Testing?


Why is Software Testing Important?
What are the benefits of Software Testing?
Testing in Software Engineering
Types of Software Testing
Testing Strategies in Software Engineering
Program Testing

Why Software Testing is Important?


Software Testing is Important because if there are any bugs or errors in the software, it can
be identified early and can be solved before delivery of the software product. Properly tested
software product ensures reliability, security and high performance which further results in
time saving, cost effectiveness and customer satisfaction.

https://www.guru99.com/software-testing-introduction-importance.html 1/8
10/27/21, 10:53 PM What is Software Testing? Definition, Basics & Types in Software Engineering

What is the need of Testing?

Testing is important because software bugs could be expensive or even dangerous. Software
bugs can potentially cause monetary and human loss, and history is full of such examples.

In April 2015, Bloomberg terminal in London crashed due to software glitch affected
more than 300,000 traders on financial markets. It forced the government to postpone a
3bn pound debt sale.
Nissan cars recalled over 1 million cars from the market due to software failure in the
airbag sensory detectors. There has been reported two accident due to this software
failure.
Starbucks was forced to close about 60 percent of stores in the U.S and Canada due to
software failure in its POS system. At one point, the store served coffee for free as they
were unable to process the transaction.
Some of Amazon’s third-party retailers saw their product price is reduced to 1p due to a
software glitch. They were left with heavy losses.
Vulnerability in Windows 10. This bug enables users to escape from security sandboxes
through a flaw in the win32k system.
In 2015 fighter plane F-35 fell victim to a software bug, making it unable to detect
targets correctly.
China Airlines Airbus A300 crashed due to a software bug on April 26, 1994, killing 264
innocents live
In 1985, Canada’s Therac-25 radiation therapy machine malfunctioned due to software
bug and delivered lethal radiation doses to patients, leaving 3 people dead and
critically injuring 3 others.
In April of 1999, a software bug caused the failure of a $1.2 billion military satellite
launch, the costliest accident in history
In May of 1996, a software bug caused the bank accounts of 823 customers of a major
U.S. bank to be credited with 920 million US dollars.

https://www.guru99.com/software-testing-introduction-importance.html 2/8
10/27/21, 10:53 PM What is Software Testing? Definition, Basics & Types in Software Engineering

What is Software Testing & Why Testing is Important?

Click here if the video is not accessible

What are the benefits of Software Testing?


Here are the benefits of using software testing:

Cost-Effective: It is one of the important advantages of software testing. Testing any IT


project on time helps you to save your money for the long term. In case if the bugs
caught in the earlier stage of software testing, it costs less to fix.
Security: It is the most vulnerable and sensitive benefit of software testing. People are
looking for trusted products. It helps in removing risks and problems earlier.
Product quality: It is an essential requirement of any software product. Testing ensures
a quality product is delivered to customers.
Customer Satisfaction: The main aim of any product is to give satisfaction to their
customers. UI/UX Testing ensures the best user experience.

Testing in Software Engineering


As per ANSI/IEEE 1059, Testing in Software Engineering is a process of evaluating a software
product to find whether the current software product meets the required conditions or not.
The testing process involves evaluating the features of the software product for
https://www.guru99.com/software-testing-introduction-importance.html 3/8
10/27/21, 10:53 PM What is Software Testing? Definition, Basics & Types in Software Engineering
The testing process involves evaluating the features of the software product for

requirements in terms of any missing requirements, bugs or errors, security, reliability and
performance.

Types of Software Testing


Here are the software testing types:

Typically Testing is classified into three categories.

Functional Testing
Non-Functional Testing or Performance Testing
Maintenance (Regression and Maintenance)

Types of Software Testing in Software Engineering

Testing Category Types of Testing

Functional Testing
Unit Testing
Integration Testing
Smoke
UAT ( User Acceptance Testing)
Localization
Globalization
https://www.guru99.com/software-testing-introduction-importance.html 4/8
10/27/21, 10:53 PM What is Software Testing? Definition, Basics & Types in Software Engineering

Interoperability

So on

Performance
Endurance
Load
Non-Functional Testing Volume
Scalability
Usability
So on

Regression
Maintenance
Maintenance

This is not the complete list as there are more than 150 types of testing types and still
adding. Also, note that not all testing types are applicable to all projects but depend on the
nature & scope of the project.

Testing Strategies in Software Engineering


Here are important strategies in software engineering:

Unit Testing: This software testing basic approach is followed by the programmer to test the
unit of the program. It helps developers to know whether the individual unit of the code is
working properly or not.

Integration testing: It focuses on the construction and design of the software. You need to
see that the integrated units are working without errors or not.

System testing: In this method, your software is compiled as a whole and then tested as a
whole. This testing strategy checks the functionality, security, portability, amongst others.

P T ti
https://www.guru99.com/software-testing-introduction-importance.html 5/8
10/27/21, 10:53 PM What is Software Testing? Definition, Basics & Types in Software Engineering

Program Testing

Program Testing in software testing is a method of executing an actual software program


with the aim of testing program behavior and finding errors. The software program is
executed with test case data to analyse the program behavior or response to the test data. A
good program testing is one which has high chances of finding bugs.

Summary of Software Testing Basics:

Define Software Testing: Software testing is defined as an activity to check whether the
actual results match the expected results and to ensure that the software system is
Defect free.
Testing is important because software bugs could be expensive or even dangerous.
The important reasons for using software testing are: cost-effective, security, product
quality, and customer satisfaction.
Typically Testing is classified into three categories functional testing, non-functional
testing or performance testing, and maintenance.
The important strategies in software engineering are: unit testing, integration testing,
validation testing, and system testing.

You Might Like:

Integration Testing: What is, Types, Top Down & Bottom Up Example
What is Adhoc Testing? Types with Example
What is Dynamic Testing? Types, Techniques & Example
Load Testing vs Stress Testing vs Performance Testing: Difference Discussed
QA Software Tester Resume Example: How to Write Job Seeking Resume

Prev Report a Bug Next

https://www.guru99.com/software-testing-introduction-importance.html 6/8

You might also like