What Is Smoke Testing, Sanity Testing and Regression Testing ? - News4u95 - A Part of Your Everyday Life

Breaking

Thursday, May 12, 2022

What Is Smoke Testing, Sanity Testing and Regression Testing ?

What Is Smoke Testing, Sanity Testing and Regression Testing ?

Smoke Testing, Sanity Testing and Regression Testing

What Is Smoke Testing, Sanity Testing and Regression Testing ?
What Is Smoke Testing, Sanity Testing and Regression Testing ?

Smoke Testing In Software Testing

Smoke testing in software engineering is a normal health check-up to the build of an application before taking it to test in-depth.

This testing is conducted to ensure whether the most crucial functions of a program are working,

Smoke Testing is directly related to Build Acceptance Testing (BAT).

In BAT, we do the same testing to verify if the build has not failed and if the system is working fine or not.

Sometimes, it happens that when a build is created, some issues get introduced and when it is delivered, the build doesn’t work for the QA.

Smoke Testing is ideally performed by the QA.

It is used to test the acute functionality of the software. When the developers deliver a new build to the Quality teams, smoke testing is done.

 

Sanity Testing In Software Testing

Sanity Testing is a test execution which is done to check existing/previous functionality and its impact but not thoroughly or in-depth.

The sanity test should only be done when you are running short of time, so never use this for your regular releases. Theoretically, this testing is a subset of regression testing.

Sanity testing is done at random to verify that each functionality is working as expected.

This is to verify whether the requirements are met or not, by checking all the features breadth-first.

This is not a planned testing and is done only when there’s a time crunch.

This mainly includes verification of business rules, functionality.

This mostly spans over 1-2 days max.

 

Difference between Smoke Testing and Sanity Testing

Difference between Smoke Testing and Sanity Testing
Difference between Smoke Testing and Sanity Testing

 

Regression Testing In Software Testing

Regression testing in software engineering is done to verify that the complete system and bug fixes are working fine.

This includes in-depth verification of functionality,

This mostly spans over 2-3 days.

Test cases are generally automated as test cases are required to be executed again and again and running the same test cases again and again manually is a time-consuming and tedious one too.

Test cases are re-executed to check the previous functionality of the application is working fine, and the new changes have not produced any bugs.

We have 4 environments/servers so we do regression once the code move from 1 server to other to make sure everything works well.

 

Regression Testing
Regression Testing

Example:

Assume login button is not working in a login page and a tester reports a bug stating that the login button is broken. Once the bug fixed by developers, tester tests it to make sure Login Button is working as per the expected result. Simultaneously, tester tests other functionality which is related to the login button.

 

Types of Regression Testing

  •     Corrective Regression Testing
  •     Retest-all Regression Testing
  •     Selective Regression Testing
  •     Progressive Regression Testing
  •     Complete Regression Testing
  •     Partial Regression Testing
  •     Unit Regression Testing

 

Software Regression Testing in Agile

In an agile environment, software testing needs to be taken up with each sprint and the quality assurance testers should make sure that new changes do not affect the existing functionality of the software.

Moreover, in agile scenarios with iterative changes, there are more frequent build cycles and continuous changes are added to the software. This sort of frequent change makes software regression testing mandatory in agile.

Thus, for successful regression testing in agile, the testing team should follow an effective regression testing strategy and build the regression testing suite from the onset of software product development.

The QA teams should continue developing the test scripts alongside each development sprints to ensure effective regression testing is achieved.

 

Read More Articles: What is Quality Assurance (QA) and Quality Control (QC)?

No comments:

Post a Comment

Related Articles