Smoke Testing / Build Acceptance Test
Smoke testing or build acceptance test is a type of functional testing in which we check if the actual or core functionalities of a software is working or not. Smoke test is a pre test.
This test allows QA team to proceed with further testing on software. As a result, It helps QA team to decide whether the software is capable for testing or it will be a waste of time. In other words it simply provide us significant information that the product is ready for testing or not. This test performed to detect early errors or bugs before going in depth testing.
When to initiate smoke test:
when new functionalities are being prepared for development phase. After it is integrated in Q/A staging atmosphere it ensures that all the functions of software are working properly. Just in case if the testing fails it is sent to the developers to rectify in the same build.
Who Does the Testing:
It is done by the Q/A engineers. The team ensures that there no showstoppers in the application which is under testing.
How to do a Smoke Test:
The implementation of test depends on the configuration and application of your build tool. But the basic steps to run the test is very simple.
After build completion and before running the test make sure to tick all the pre-requisites like copy the files to appropriate places, set database tables, install license & start the server.
Get Test Files:
Compile all the relevant files before initiating a test.
Keep the script as short as possible while build should remain static for flexibility. All the reports should be saved in build files. If any error occurs immediately report it to the concerned developer with the output of script.
After running successful test make sure to clean up. Stop the server, delete the files, empty the database.
Advantages of Smoke Testing:
- Error identification in integration of modules.
- Early bugs in functionality can be sorted out in early phase.
- Fixation of errors without breaking any features.
Characteristics of Smoke Testing:
- In testing Different features of application are verified before sending to testing processes.
- Testing is done manually or through automation based on the requirement.
- Testing is done in positive scenarios.
- You must have valid data and the documentation of process.
If you want to learn more about software testing: https://www.mammoth-ai.com/automation-testing/