Software testing is the procedure of validating and confirming a software application to test whether the application is working as per the given requirement or not.

The primary purpose of performing any type of software testing is to identify the bugs or help the end-users to correct his/her mistakes through inserting incorrect data, handling them to categorizes and rectify.

The software testing process helps us to enhance the product quality, robustness, and deliver a more user-friendly application.

To achieve all the above aspects, we will use the different testing types and test techniques. Here, we are discussing one of them, namely, Positive Testing.

In this article, we are going to discuss the following topics related to the Positive testing:

  • What is Positive testing and its objective
  • Why do we need to perform Positive testing?
  • How to perform Positive testing
  • Example of Positive testing
  • Benefits of Positive testing

What is Positive Testing?

It is another essential testing technique used to show a software product or an application under the test.

It validates how the application performs for the positive set of data. In this type of testing, we will enter the valid data set as the input value.

Positive Testing

We will implement positive testing to validate the exact working of different software modules with the lines of estimated performance in response to valid data input.

For example, suppose we have the Software applications like website and mobile application which needs objects like text boxes and text forms. So, in such cases, positive testing is used to tests the specific functionality of these objects.

Usually, positive testing is implemented to make sure that the particular application or the software product meets the client's specifications and prospects.

In other words, we can state that positive testing is mainly used to help the test engineer to check whether the software is working as expected by using positive inputs or not.

Concisely, positive testing is used to test the software or an application precisely what it's meant to perform.

Note: Positive testing evaluates the positive scenarios like happy paths with valid data.

Why do we need to perform Positive Testing?

Positive testing is required to perform if we may face the following situations:

  • Whenever the application is ready for the testing process, a test engineer can implement all the other scenarios designed for that functionality like Database testing, Negative testing, and so on, only after positive testing is approved.
  • The execution of positive testing is required each time the build is ready, further known as Smoke testing/ build verification testing/sanity testing, , because it is a first step of the test execution process.

Examples of Positive Testing

For our better understanding of the positive testing, we will see the below examples:

Example1:

In this example, suppose we have one Textbox that can only accept alphabetic character values.

Positive Testing

Therefore, in this case, the positive test scenario is as follows:

Positive Test Scenario:

  • Enter the alphabetical character valuesand verify that the application receives the input values under test or not.
Positive Testing

Let's see one more example of positive testing:

Example2

In this example, suppose we have one web application where we need to fill the login form. And, in the specific login page, the following condition needs to be considered:

  • The user should enter Username, Password and click on the Submit button.
  • After inserting the exact the username and password and click on the Submit button, the user should be navigated to the next page.
Positive Testing

So, in the above case, the positive test scenario is as discussed below:

Positive Test Scenario:

  • Insert the right Username and Password (like USERNAME and PASSWORD).
  • Then click on the Submit button and check that the user is navigated to the next page as expected or not.
Positive Testing

How to execute Positive Testing?

In order to execute the positive testing, we have the following two testing approaches, which are highly recommended and most commonly used during the execution of positive testing.

  • Equivalence Partitioning
  • Boundary Value Analysis
Positive Testing

Both the testing techniques are mainly used to design a test case. These approaches will be relevant whenever a test engineer needs to test the numeric fields.

A test engineer should check the input data, testing activities, and output while executing the positive testing. Because all the time a test engineer needs to analysis if the test input is within the limits of given test data or not.

Let us see the details working of both equivalence partitioning and boundary value analysis testing techniques one by one.

Equivalence Partitioning

It is one of the most commonly used test case design techniques of software testing. In equivalence partitioning, the input data is separated into partitions of valid and invalid values. It is derived from the requirements and specifications of the software product.

In other words, we can say that a test engineer can divide the test input into equal partitions and use the values from each section as test data in the equivalence partitioning approach. A test engineer also needs to ensure that the test data include the values from all partitions.

Let see one sample example for our better understanding.

For example, suppose we have one field or system and input value (1-50), which is considered a range of values.

In the Equivalence Partitioning testing technique, the input data is divided into two or more than two partitions, as we can see below:

First partition(valid):1-25

Second partition(valid): 26-50

Third Partition(invalid): 51-100

Positive Testing

Boundary Value Analysis

Another most essentially used test case design technique is Boundary value analysis. This technique is used to test boundary values as the input values because near the boundary have greater chances of error or mistake. Mainly, it is used to test the numeric fields.

A test engineer needs to develop test data within the boundaries or a data range in the boundary value analysis technique. Because the input data is selected outside the boundary value limits.

While performing the positive testing, if the input is a range of values between A to B, then we have to design the test for such input's values:

  • A, A+1, A-1
  • B, B+1, B - 1.

Let us take an example for better clarification:

For example, suppose we have a system that can accept the numbers from 0 to 10 numeric values. And all the rest other numbers are invalid values.

Under boundary value analysis technique, the boundary values will be tested in the below range: -1,0,1 and 9,10,11

Positive Testing

Advantages of Positive Testing

Some of the significant benefits of Positive testing are as discussed below:

  • It is used to saves a test engineer's efforts by finding the wrong build in the initial stages.
  • To test the positive path of an application, we can execute the Positive testing.
  • Positive testing does not promise the quality of an application as a test engineer cannot test an application's performance in unpredicted conditions, such as when a user enters incorrect data.

Overview

In this article, we have seen in-detail information about Positive testing, like needs of positive testing, execution process of positive testing, examples, and benefits of positive testing.

After seeing all the above mentation topics, we can conclude that positive testing is necessary. Positive testing plays an essential role in verifying regular performance of basic objects identified in most websites.

For effective testing results, we need to perform both Positive and Negative testing, which provides enough certainty in the software's quality.

The primary aim behind implementing all type's software testing is to ensure that the software product is bug-free before the software is launched and help deliver a high-quality software product.