I would like to share about implementing a smoke test automation for e-commerce shopping sites to increase the performance of our team.
I worked on a support tickets project which testing on so many e-commerce sites about 100 sites. The tickets will be created by the client’s requirements of each site. The QA will test the tickets after the developer done it and smoke test the site. The tickets are not the same and just done one-time only, no regression, but the smoke test will start after a ticket had done. When I joined the project, I wanted to apply the automation for the smoke test to reduce the testing time for the QA. But there are some difficult things, the smoke test process for each site is not the same. So I need to analyze and define the scope of smoke test for e-commerce shopping sites and apply the automation for them.
I applied automation for below items:
- Users information compare with database or admin sites
- Access to a product by clicking on categories…
- Searching products, access to product details page by searching
- Products sort and paging depending on the configuration in admin site or not
- Checkout process: the process when a client checkout an order (verify UI all pages of the flow (home page, product details page, basket page, checkout steps, carousel…), functions of this process (promotion, pricing, taxing, shipping cost, shipping function…)
- Checkout with guest, checkout with login, checkout with the same address in billing and shipping, checkout with some kinds of promotions…
- Checkout orders should be created in the database or in admin sites or a third-party after client submitted the orders, compare information in receipts online with the database or a third-party after client submitted the orders
- Check email confirmation should be sent immediately after client submitted the orders (order code, products, tax, ship, price, promotion… and all information in email
The automation for the smoke test was applied and the QAs just test the tickets and click run the smoke test. Or testing when the smoke test was running. The testing time for a ticket was reduced so much. Some cases, the smoke test also help the QA to get the order ID to test ticket. The testing time of the whole team was reduced, the performance of each QA is increased, the number of testing tickets is increased. The client was happy with us.
This is my experience that the automation will help increase the performance of the project and be exceed the client expectation
Above things are my testability analyzed in my project depending on the testability of James Bach: Heuristics of Software Testability