Magento Automation Testing
Magento automation testing
E-commerce is an industry that relies solely on customers. Thus, in an online store, not only aesthetics but also functionality and stability are of key importance. Along with the development of the Magento platform, adding new functionalities, or changing the standard CMS code, there may be a problem with the operation of the online store. However, they will be visible after careful e-commerce analysis. In this way, you can lose from hundreds to even millions of pounds if the store is not working properly.
Advantages of automation testing
The advantages of the automated end 2 end automation testing of Magento:
- quicker detection of issues on early-stage (tests are running with every change on a test environment),
- save money on a manual repetitive testing done by the QA team,
- fewer issues on a live server by functional automation tests.
About automation testing
Save time and money with automation testing
Imagine your business is growing. From one online store, you expanded your business for 5 additional countries and each of them has different payment methods and additional restrictions related to the address validation.
With that size of the business, your QA team needs to test each critical patch on each store when new changes/functionalities are deployed live.
This gives us a formula:
number of shops x number of payment methods x number of screen resolutions x number of minutes = total time for manual tests
and this is how it looks like with real numbers 6 x 4 x 2 x 5 = 240 minutes of manual tests for a single check of all stores.
With 10 tasks it is 40 hours of manual tests! This time can be saved by Selenium test automation.
Look how Selenium automation testing work in practice
Here is a short example of how a critical path with one payment method was covered with an automated test using Selenium, Python, and Selenoid. These kinds of automation tests run with every new deployment to the live or test environment.
- developer push changes to GIT
- CI/CD deploy changes on a Magento test environment
- CI/CD run all Selenium tests on Magneto.
- CI/CD notify the team on Slack channel if Magento tests passed or failed
That allows to quickly identify what changes broked a functionality on the shop.
QA and Magento 2 automation test
Help in checking the stability and functionality of the online store comes with QA’s, along with automatic, functional tests on Magento 2. This way you can be sure that each functionality in the store has been properly tested on the development server, before releasing it to your production server – where they are located currently Customers who want to make a purchase in your e-commerce. Automation testing check as well your whole store faster than standard manual testing.
Types of Magento 2 automated tests performed by our agency.
- Functional tests – automation Magento tests that allow you to verify the implementation of functionalities in your Magento 2 store. In the test case, the requirements of end-users are compared with the features or functions of the product. We are using the Magento Functional Testing Framework (FTF) in Magento 2.
- Performance tests – automation Magento tests to check the reliability, reproducibility, and consistency of your Magento 2 online store.
- Integration tests – are designed to check whether Magento 2 integrations with an external system will work properly in the Magento store environment. In this way, we check how the various components of the store interact with each other.
- Static code analysis tests – code analysis by conducting code Magento tests based on coding standards.
- Unit tests – automation Magento tests written by developers, aimed at looking for errors in functionality that do not comply with the logic of the Magento store.
Check how Magento testing process looks like
When we are given an assignment that has never been tested and we are free to test scope, the process is as follows:
- We check what are the acceptance criteria needed to perform this task and perform automation Magento tests based on them.
- Then perform we positive test cases for a given functionality, then we check negative test cases.
- Our team verify that all data is transferred correctly between websites if they are transferred,
- We check the visual aspects, RWD for desktop, tablet, and mobile, on various browsers. We also check the programming console. There are full dev automation tests and production Magento store automation testing.
In the test case for PWA technology – the testing content is generated automatically. We do not have static pages, so there is a difference in checking migration. We use crawlers to verify static websites, and for dynamic websites, we need a workaround that will generate us content without a browser.
At Panda Group, we use BrowserStack and the browser console for functional tests.
We use Python, Behave, Gherkin, Selenium, Selenoid Server, and Docker to start automation functional testing.