Beginner Checklist To Test Magento 1 And Magento 2 Extensions

Table of Content

Magento testing: checklist for beginners

Hello to Amasty blog readers!

With this article, we’re starting a series of blog posts devoted to Magento testing. Sometimes it feels like this topic is not covered in full when it comes to the Magento community. We’d like to fill in the holes here!

Our first article is written for those who are developing and/or testing their own Magento extensions. We’ve compiled a checklist of the basic things you need to test before releasing any tool, free or paid. These points are quite basic and are aimed at people which are just starting their journey in the world of Magento product testing.

What is more, this checklist can be of great help for Magento merchants. Using some of these points, you can test if the newly bought extension is working fine on your Magento store.

1. Make the list of influences the extension possesses

It will be helpful to write a test plan for your extension.

  • Does it work on backend, frontend, or both?
  • Does it work with prices, products, customers, orders and other groups of features? List them all.
  • Does it work with third party entities, such as payment options, third party extensions, or any other services? List them all.

2. Test the extension functionality

Use specifications or other inner documents to check all the module’s options.

Pro tip: If you're a merchant, use Magento extension product pages, user guides and demos for reference.

3. Test Magento features which can be influenced by the module

Distribute them into several categories: payments, taxes, catalog management, customer management, etc. Use a Magento features list for reference.

4. Test your Magento extension on several platform versions

You probably know that Magento users don’t stick to only one Magento version.

This is a chart from 2016. Right now the tendency has changed only when it comes to the popularity of certain versions, not the pattern in general:

Ideally, you have to test the module on each Magento version that is available. In reality, you choose which Magento versions you’re going to support and, consequently, to test your extensions on. It is recommended to test Magento 1 extensions on versions from M1.7 to the latest relevant one, for Magento 2 from 2.1.o to the latest relevant one.

Pro tip: with time, you’ll see that there’s no need to test the same functionality on all the versions (say, 1.7.0, 1.7.1, and so on) because there's not much difference between them (which could matter for the particular feature testing process), and QA guys usually are aware of the changes that were made from version to version. At Amasty, with several years of testing we worked out a system based on which we’re testing the extensions.

We’re picking three versions. The first one is the latest stable one, the second and the third ones are the older versions which are popular and have the most difference between them. If we do know that the extension can work with areas that were changed in the particular third-level versions (say, 1.7.0, 1.7.1, and so on), we also add them to the test plan.

This allows us to save time and to cover the most differences when it comes to various Magento versions.

So, think before testing! Build a plan and compare versions to incorporate them into your schedule.

4. Test your Magento extension on various designs

If the extension makes some changes to the frontend, you should test it out! Check the Magento out of the box themes (the old one and the new one which comes with 1.9 and later versions – RWD (Madison Island) first! Don’t forget to cross-check the mobile and tablet view in case of RWD.

5. Test if your extension supports website/store/store view entities

Make sure that all the settings which incorporate store view choosing don’t influence the other store views. Also, global settings (which should be applied for a website) are influencing all the store views. This is an important Magento peculiarity which should be considered while building a test plan.

6. Load test your Magento extensions

Test your extensions, if they will potentially deal with big amounts of data or visitors. Check response time of the pages with high traffic on the frontend and how the extension handles big chunks of data on the backend. For example, any import and export options must be checked on how they handle big files.

This is a very important point, while, of course, everything on this list is important as well. While backend speed hiccups or issues influence store management effectiveness, frontend high load issues can lead to sales and revenue loss just like that.

Pro tip: to make load testing convenient, we created some sample Magento installations with a lot of stores, categories, orders, customers, products (as well as product images), product attributes etc, and we employ tools that can load test pages to check their response time under high visitors traffic.

7. Cross-browser checking. Web, mobile, and tablet if supported

This is a basic test for any website – check how the pages affected by the extension are performing in Chrome, Safari, Firefox and Internet Explorer.

If the layout supports mobile and/or tablet, or your store has a separate mobile version, make sure to see how the pages perform on various screen sizes, Android and iOS and in the couple of popular mobile browsers.

Pro tip: don’t forget to cross-browser test the backend, too.

8. Check how installation and deinstallation processes go

Also, don’t forget to include a deactivate test into your plan.

9. Check how the update process goes

If you’ve made some substantial changes to the module structure, it’s necessary to know if the client is able to update any of the previous versions without any trouble. Pay special attention to the possible data and settings loss.

10. Check extensions compatibility with third party extensions and services

First of all, you need to think about the list of extensions you’re going to make your product compatible with. Usually, if you’re working in a team, your Project Manager gives you this information.

We at Amasty are testing all of our extensions for mutual compatibility (130+ Magento 1 modules and 70+ Magento 2 modules). It’s a hard part of the testing, but it is not as complicated as it could be because when we’re checking a module, we know that all the previous products were tested. In other words, it’s easier to identify and fix a bug when you know for sure which product is causing it.

Pro tip: have a copy of Magento with all the extensions that should be mutually compatible installed. Thus, performing other tests on such a Magento installation will reveal all the compatibility issues right away,

11. Perform the standard security check

This applies for Magento extensions which work with files and data (import and export, forms, and such) and includes file opening from a direct link, permissions, form validations, and such. This is a big and important topic, which will be covered in detail in our future articles.

12. Test in Production mode

While it’s not an issue with Magento 1, testing in production mode on Magento 2 has some peculiarities. If you install the first extension onto a clean Magento 2 site, the production mode turns on automatically. If you need to install a second extension, you have to turn the production mode off, install the extension and turn it on again.

13. Cross-check the above points

For example, if you’re checking two Magento themes with your extension, apply cross-browser testing to both of them.

So that’s the basic list of the points you absolutely have to incorporate into your Magento extensions testing routine.

We will cover more of these points in our future articles. Please let us know if a particular part is more interesting for you, and we’ll schedule the next articles according to demand.

Thanks, and stay tuned!

October 4, 2017
November 20, 2017
August 18, 2017
Comments
Tomek
October 13, 2017
Cool , but why Special Promotions Pro is not compatible with Auto Add Pomo Item? :) several functions interferes in both extensions.... can you add conflict solving faq for this two extension installed together?
Reply
Ksenia Dobreva
October 20, 2017
Hey Tomek, thanks for your comment. Could you please clarify a couple of things for me here? First of all, are you talking about M1 or M2? Could you please mention these interferences? Or feel free to send me the IDs of the support tickets if you have any on that matter ([email protected]) Thanks in advance!
casino
November 24, 2019
Hmm it looks like your website ate my first comment (it was extremely long) so I guess I'll just sum it up what I submitted and say, I'm thoroughly enjoying your blog. I too am an aspiring blog writer but I'm still new to the whole thing. Do you have any points for inexperienced blog writers? I'd definitely appreciate it.
Reply
Polina Litreyeva
November 25, 2019
Hi! Thanks for your comment. If you want to collaborate with us, please, contact us <a href="https://products.amasty.com/guestposting" rel="nofollow">here</a>! We will be happy to see what we can do together.
Leave your comment

Your email address will not be published

This blog was created with Amasty Blog Pro

This blog was created with Amasty Blog Pro