Software testing is supposed to be an inevitable part of the work flow before launching your Magento 2 store. Lack of testing may abruptly bring up various issues to the release stage, that, in turns, may inflict negative business outcomes and profit loss with a subsequent hot fixes mess. In such case the development costs would be partially wasted efforts.
Unlike conventional content websites, e-commerce websites are structured in a way to have a common core of pages for performing a checkout flow. Here is a list of pages which are always included to our basic Magento functionality checklist for the frontend as follows:
- Homepage – storefront of online business, basically featured by banners and other content.
- Registration / login page – stores returning customers’ data for optimization of the prospective orders.
- Search – the feature for performing a search of products / categories / etc.
- Category page – the landing page for the overall category like clothing, outerwear, etc.
- Product listing page – the list view for products of the specific categories.
- Product details page – data about the specific product with the main call-to-action button “add to cart”.
- Shopping cart / mini cart – the list of the items that have been picked by user and ready to checkout.
- Checkout / guest checkout – the flow of order placing as for the registered or a new customer.
- My account (info, orders, etc.) – is supposed to keep data for returning customers, incl. orders, customer info, credit memo, reward / loyalty points, etc.
As for the backend, it’s needed to verify the following key items:
– Admin login
– Create a user
– Email notification for user registration, order confirmation, forgot password etc.
– Create order via back end
– Edit / remove cart items
– Create a couple of products (simple and configurable at least)
– Customer management
– Custom modules verification
– Third party modules integration
– CMS pages / blocks
– Cron job (if crucial for the specific module)
– Email Subscription
Regardless of the established trends of Magento testing, we prefer using the checklists among all sort of prepared testing documentation, so as to save time on writing redundant documentation. This approach has evolved from the experience of working on various dynamic and fast-growing projects, where the documentation may be changed frequently. It is a checklist that has definitely become the most agile document in this case, which also reflects the current state of testing for the dev team.
Basically, a checklist covers the following:
– Functional test scenarios
– Admin test scenarios
– Custom modules in the website
The most common testing methods that we use for Magento are following:
The functional testing is performed in order to check a Magento website from the customer’s perspective (black-box testing approach). In other words, the test is need to check if every functionality works flawlessly on the front-end by interacting directly with page objects or triggering possible actions by clicking buttons or getting guest order ID. This type of Magento testing is also known as a Usability testing.
Requesting the supported device list from product owners / project managers before beginning the very responsive testing and including them into a checklist as alternative environments. Prepare and include a separate test cases if they vary from the general and highlighted on the mockup.
Verifying the main user scenarios, designs and CMS pages in supported Windows and Mac environment browsers.
Verifying the reliability of application / servers under the load, ensuring the website sustainability on holidays, Black Friday, etc.
Third Party Integration Testing
Third-party integration is a regular demand for Magento store owners.
Customer Relationship Management (CRM), Enterprise Resource Planning (ERP), Product Information Management (PIM), and payment gateways are the most integrated third-party systems. Integration testing is performed to help store owners ensure seamless interaction between integrated components. It tests whether data flow correctly between parts of a store and updates get reflected in all the systems involved.
After fixing the issues, which occurred during the 1st end-to-end testing round, and reaching the first stable build, QA testers check if there are no issues after fixing and everything works properly.
With the basic understanding of Magento testing types and Magento testing areas, a bug-free Magento online store is completely at the fingertips of store owners and developers.
In case you need any support or consultation, feel free to CONTACT Reactive Hive, we would be pleased to meet your demands.
Useful Tips For Best Practices Of Magento Testing
• Concentrate on the purpose of testing: Before performing testing, you should specify clear objectives for the test. Focusing on a specific goal is an essential condition to get the final exact results.
• Bug-reporting order: Clarify the way of bug-reporting and tracking the fixes. Use a suitable bug tracking tool and determine if tracked metrics are what you need.
• Leverage analytics: Ask project manager or product owner for customer analytics, study it and figure out the weak parts of functionality. This way you may get the expectations for bugs on the specific part of functionality or environment.
• Environment compliance: Request the list of crucial devices and environments for the store, include them to the checklist.
• Pay more attention to the UI: Undoubtedly, it’s needed to run functional tests done by manual QAs to try various scenarios and get a feel for the overall app’s UI.