Smoke and Sanity Testing:
The process to create an executable program uses “build” software and is called “Software Build”.
Sanity testing: Sanity Testing verifies the new functionality like bug fixes and is a is a subset of Regression Testing.
Sanity testing is performed to check if new module additions to an existing software build are working as expected and can pass to the next level of testing. It is a subset of regression testing and evaluates the quality of regressions made to the software. The main purpose of Sanity testing is to verify that the changes or the proposed functionality are working according to plan. Suppose there are minor changes to be made to the code, the sanity test further checks if the end-to-end testing of the build can be performed seamlessly.
Smoke Testing: Smoke Testing verifies the critical functionalities of the system and is a subset of acceptance testing.
Smoke Testing is carried out post software built in the early stages of SDLC (software development life cycle) to reveal failures, if any, in the pre-released version of a software. The testing ensures that all core functionalities of the program are working smoothly and cohesively. The intent of smoke testing is not exhaustive testing but to eliminate errors in the core of the software. It detects errors in the preliminary stage so that no futile efforts are made in the later phases of the SDLC.
Validation and Verification:
Verification in Software Testing is a process of checking documents, design, code, and program to check if the software has been built according to the requirements or not. The main goal of verification process is to ensure quality of software application, design, architecture etc. The verification process involves activities like reviews, walk-throughs, and inspection. It does not involve executing the code. It comes before validation.
Validation in Software Engineering is a dynamic mechanism of testing and validating if the software product meets the exact needs of the customer or not. The process helps to ensure that the software fulfills the desired use in an appropriate environment. The validation process involves activities like unit testing, integration testing, system testing and user acceptance testing. It always involves executing the code. It comes after verification.
For further actions, you may consider blocking this person and/or reporting abuse
Top comments (0)