Magento 2 Version upgrade process breakdown
Magento version upgrades come highly recommended, with each new version bringing improvements in performance, security, and features. Having done Magento version upgrades for a plethora of clients, one of the most frequently asked questions we've heard is - why does it take so long?
The upgrade process consists of far more than just 'simply' updating the Magento platform, as a great many things need to be considered, tested, changed, and deployed. A version upgrade requires many actions. In this article we'll go through the 4 phases of Magento upgrade, clarifying what does Magento 2 upgrade entail, how does Magento upgrade work, and why does Magento upgrade take so long?
- Plain upgrade.
- Thoroughly inspect release notes, note areas that'll require special attention.
- Upgrade Magento vendor source to version 2.3.x (or any other version).
- Ensure that all standard Magento deployment commands work e.g. install, deploy, compile, cache management.
- If this cannot be resolved in a timely manner, estimate effort necessary to get the site in running condition.
Result: A website that serves pages and some of the functionality works.
Once Magento version is upgraded, all:
- Theme override files that were updated with the version should be inspected.
- Preferences developed for core files need to be inspected.
- Should also cover 3rd party module changes since those will be upgraded along with Magento.
Result: A list of source code adjustments that will need to be done for compatibility with the latest Magento source, along with estimated effort to resolve those.
When all of the noticeable differences are resolved, we should proceed with manual testing scenarios that'll cover the most important application areas. The proposed ones are:
- Add to cart, remove from cart, change qty, configurable membership options are saved.
- Guest order.
- Register a new customer, reset the password, login/logout.
- Newsletter subscribe/unsubscribe.
- Registered user order.
- Coupon codes apply/remove.
- Login, logout, change password.
- Basic order processing, invoice, ship, cancel, void.
- Customer management - edit details, reset password, add, delete.
- Product management, update data (title, url key, stock), category assignment, visibility.
- Schedule jobs, try and execute the ones that are safe to do so.
- See if there are no runtime errors during cron:run.
- Indexing does not result in errors.
Let us know if there are any other business-critical scenarios which require special attention and additional testing.
Result: List of issues that were found during functional testing, containing estimated effort necessary to resolve them.
Once the store is confirmed running successfully on a local installation, we proceed with deployments to development and staging environments and undergo checks from PHASE 3 once again.
When everything looks good, the client is asked to UAT website and if confirmed - should be ready for upgrade go-live.
Magento version upgrade can take much longer time than expected, however following the structured approach outlined above, Scandiweb ensures the process is streamlined and completed as efficiently as possible. The time invested in testing and making sure no bugs are introduced into your system is critical, as it's significantly cheaper to pre-emptively ensure a bug-free launch, rather than firefight issues post-launch.
Have any questions about Magento upgrades? You can find more information here, or you can just click that orange bubble to your right and ask us right now!