You are on page 1of 8

Day 1

 What is Software Testing?

 What is Testing?

 Why Software Testing is Important?

 What is the need of Testing?

 What are the benefits of Software Testing?

 Testing in Software Engineering

 Types of Software Testing

 Manual Testing
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.

In simple terms, Software Testing means the Verification of Application Under


Test (AUT).

Or
Process of finding defects in the Software is called Software Testing

Or
Verifying the Functionality of the application against Requirement Specification
is called Software Testing

Software testing is a process of identifying the correctness of software by


considering its all attributes (Reliability, Scalability, Portability, Re-usability,
Usability) and evaluating the execution of software components to find the
software bugs or errors or defects.
Software testing provides an independent view and objective of the software
and gives surety of fitness of the software. It involves testing of all components
under the required services to confirm that whether it is satisfying the specified
requirements or not. The process is also providing the client with information
about the quality of the software.

Testing is mandatory because it will be a dangerous situation if the software


fails any of time due to lack of testing. So, without testing software cannot be
deployed to the end user.
What is Testing?
Testing is a group of techniques to determine the correctness of the application
under the predefined script but, testing cannot find all the defect of application.
The main intent of testing is to detect failures of the application so that failures
can be discovered and corrected. It does not demonstrate that a product
functions properly under all conditions but only that it is not working in some
specific conditions.

Testing furnishes comparison that compares the behaviour and state of


software against mechanisms because the problem can be recognized by the
mechanism. The mechanism may include past versions of the same specified
product, comparable products, and interfaces of expected purpose, relevant
standards, or other criteria but not limited up to these.

The success of software depends upon acceptance of its targeted audience,


easy graphical user interface, strong functionality load test, etc. For example,
the audience of banking is totally different from the audience of a video game.
Therefore, when an organization develops a software product, it can assess
whether the software product will be beneficial to its purchasers and other
audience.

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.

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 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.

Why we do Software Testing?


 Every Software is developed to support business. If there is bug in the
software it effects the business. So, before we use software for business it
should be tested, and all bugs should be recognized, and all the bugs
should be fixed.
 In Order to improve the quality of the software we should do Software
Testing.
 To check the software works according to the Customer Requirements.

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.

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 requirements in terms of any missing
requirements, bugs or errors, security, reliability and performance.
Type of Software testing
We have various types of testing available in the market, which are used to test the
application or the software.

With the help of below image, we can easily understand the type of software testing:
Aspects Automation testing Manual testing

Definition When an application or software is It is a type of software testing,


tested with the help of some tools which is done by the test Engineer
is known as automation testing. to check the functionality of an
Whenever multiple releases or application based on the customer
multiple regression cycle is going requirement.
on the application or software, we
will go for automation testing.

Reliability It is reliable because it tests the It is not reliable because there is a


application with the help of tools possibility of human error, which
and test scripts. may not be delivered the bug-free
application.

Reused The script can be reused across It could be possible when the test
multiple releases. case only needs to run once or
twice.

Batch Execution Batch execution is possible using Batch execution is not possible in
automation testing because all the manual testing.
written scripts can be executed
parallelly or simultaneously.

Timesaving The execution is always faster than It is time consuming due to the
the manual; that's why the usage of the human resources.
automation testing process is
timesaving.

Investment While using the Automation tool, Human resources needed


investment is required. investment.

Programming Without having an understanding There is no need-to-know


knowledge of programming language, we programming language but should
cannot write the test script. have the product knowledge to
write the test case.

Framework The automation test engineer can There is no need for a framework
use the different types of while using manual testing.
frameworks like Data driven,
Hybrid, modular driven, and
keyword-driven to faster the
automation process.
Operating Automation testing can also be Operating system compatibility is
system performed on different systems not possible in manual testing
compatibility with different operating system because the different tester is
platforms and various required to perform such tasks.
programming languages.

Regression Whenever the code changes When the test engineer executes
testing happen due to the enhancement the test case for the first time, it
of the release, then automation may be useful, but there is a
test engineer performs the possibility that it will not catch the
regression testing. regression bugs because of
changing requirements frequently.

Manual testing
The process of checking the functionality of an application as per the customer
needs without taking any help of automation tools is known as manual testing. While
performing the manual testing on any application, we do not need any specific
knowledge of any testing tool, rather than have a proper understanding of the
product so we can easily prepare the test document.

Reference Links
https://www.guru99.com/software-testing-introduction-importance.html
https://www.javatpoint.com/software-testing-tutorial
https://www.javatpoint.com/automation-testing-vs-manual-testing

You might also like