Smoke Testing-Functional and Non-Functional Smoke Test Cases
Tags: softwareengineering, software, testing, sripriyapkulkarni
Published: 2023-10-24 05:13:34

## What is Smoke Testing?

Smoke Testing is a type of testing which is done to make sure that the basic and critical functionalities of the software is working fine. It is also known as a subset of Acceptance testing.

This testing is done to ensure that the build is stable enough for further testing. Smoke testing involves a quick and shallow check of the software application to verify that it is functioning properly and that there are no critical defects that could prevent further testing.

![Smoke Testing](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p8k9ppmubssxh1orbpii.jpg)

## When to Perform Smoke Testing?

Whenever the Dev team provides a fresh build to the QA team. Fresh Build=Build has new changes made by the developer.
When a new module/functionality is added.

> Now let us see some of the functional smoke test cases of an Ecommerce application:


- Verify that the homepage loads correctly and all the elements are displayed correctly, including the logo, navigation menu, and featured products.
- Verify that the search bar is working properly by searching for a product and ensuring that the correct results are displayed.
- Verify that the user can add a product to the cart and that the cart icon updates correctly.
- Verify that the user can navigate to the product details page and all the product information is displayed correctly.
- Verify that the user can proceed to the checkout page and all the required fields are displayed correctly.
- Verify that the user can successfully submit an order and that an order confirmation is displayed.
- Verify that the user can view their order history and that past orders are displayed correctly.
- Verify that the user can log in and out of the application successfully.
- Verify that the user can navigate through the different categories and that the products are displayed correctly.
- Verify that the user can add a product to the Wishlist and that the Wishlist icon updates correctly.

> Now let us see some of the non-functional smoke test cases of an Ecommerce application:

- Verify that the homepage loads within an acceptable time frame when tested with a small number of concurrent users.
- Verify that the application’s response time remains within an acceptable limit when tested with increasing number of concurrent users.
- Verify that the application’s throughput remains within an acceptable limit when tested with increasing number of concurrent users.
- Verify that the application’s resource utilization like CPU , RAM and ROM remains within acceptable limits when tested with increasing number of concurrent users.
- Verify that the application does not crash when tested with a high load of concurrent users.
- Verify that the application is able to handle a large number of concurrent users and transactions without any significant performance degradation.
- Verify that the application’s performance remains consistent over time.
- Verify that the application’s performance is not affected by other processes running on the same server.
- Verify that the application’s performance does not degrade when running on different browsers and different devices.
- Verify that the application’s performance does not degrade when running on different network conditions liek low or high latency.
- Verify the Load Balancing is done by servers correctly in case of any down time.

These are some of the common Smoke test cases which needs to be performed soon after the build is deployed.

### Conclusion
Smoke is the significant type of testing in the development of an application. A smoke test is used to confirm whether the basic functionalities of a particular build are working fine or not.

The main motto of Smoke tests is that they are employed to avoid wasting time and effort by quickly checking whether or not an application is fit for more rigorous testing further.

Happy Testing! 🤩