Magento 2 Extension

EmailTester 2

Preview any transactional email in your Magento 2 backend

Already used in more than 519 shops
  • 100% open source and well-written
  • compliant with modern Magento standards
  • 1 year of free composer updates & support
  • 14 day money-back guarantee
$ 99
for 6 months

Latest release: 1.2.0

Easy to use

Go to your Magento 2 backend, open up the EmailTester page and you are set. You can quickly select any transactional email and preview the email in your browser or send it to a specific inbox.

Dummy data

Most transactional emails in Magento require some kind of data: Customer details, product pricing, a valid quote. EmailTester makes it extremely use to pick a mail and fill it with the dummy data that you want to test.

Packages & pricing

This extension is also listed on the Magento Marketplace: https://marketplace.magento.com/yireo-magento2-emailtester2.html

A vital addition to your Magento toolbox

100s developers have opted already for this amazing extension

Preview mails or send them

With EmailTester, you can select a Magento transactional email and preview it in the browser or send it to an emailaddress of your choice. The preview window allows you to refresh the page, while you work on improving the email layout in your editor.

Sending the email allows you to easily double-check whether the mail is displayed properly across multiple email clients.

Select dummy data easily

From within the form where you select the email to work with, you can also select a customer, a product and an order. From these data, EmailTester is able to derive all email variables needed to display an email with actual content. Inserting different customers or products is easily done. You never need to create a complete test-order again in the frontend to test email behavior.

Extensible as it should be

Our EmailTester picks up on any email that is built using the Magento transactional email system. Simply put, if you can override it in the Magento backend, you can test it with EmailTester.

Additionally, you create your own module to insert additional data into the EmailTester system, for instance if a third party extension adds a new entity to emails. We've made this really easy for developers to adopt: Just use the core event email_order_set_template_vars_before which is meant for this thing.



Tip: Use our Delete-Any-Order extension
to remove dummy orders, once you are done testing them.

Extension screenshots

Quick Start to install your Yireo extension

Installation via composer URL

We recommend to install Magento 2 extensions via composer. See the Composer project for instructions on how to get composer up and running. Once composer is installed, use the following commands to install our extension. Make sure to add in your own subscription key.

composer config repositories.yireo-emailtester2 composer https://api.yireo.com/composer.php/key,YOUR-LICENSE-KEY/
composer require yireo/magento2-emailtester2

This will make composer download the package from our online composer repository, using your subscription key for authentication. After the composer installation has finished, use the following commands to enable the module within Magento:

bin/magento module:enable Yireo_EmailTester2
bin/magento cache:clean
bin/magento setup:upgrade

After these commands, the extension is ready for use in Magento. If you were already logged into the Magento Admin Panel, make sure to logout and log back in again, before proceeding. Do not forget to grab yourself a manual copy of our extension as a backup.

Installation via composer artifact

We recommend to install Magento 2 extensions via composer. See the Composer project for instructions on how to get composer up and running. Once composer is installed, download the composer ZIP packages from this webpage under the File Downloads tab. Create a new folder packages within your Magento source and copy the ZIP packages to this new folder. Next, run the following commands (and make sure to include the right path to your Magento source):

composer config repositories.zip-packages artifact /path/to/magento/packages
composer require yireo/magento2-emailtester2

Composer will search the packages folder for the latest available package. After the composer installation has finished successfully, use the following commands to enable the module within Magento:

bin/magento module:enable Yireo_EmailTester2
bin/magento cache:clean
bin/magento setup:upgrade

After these commands, the extension is ready for use in Magento. If you were already logged into the Magento Admin Panel, make sure to logout and log back in again, before proceeding. Do not forget to grab yourself a manual copy of our extension as a backup.

Manual installation

Please note that we highly recommend using composer instead. However, in some cases, it might be required to do a non-composer installation. For this, download the module ZIP from our site (under the tab File Downloads). Next, create a folder with the following name and copy to the ZIP contents to it:

app/code/Yireo/EmailTester2

After the files have been uploaded, confirm that all files are in place. For instance, you should have a file like app/code/Yireo/EmailTester2/etc/module.xml. Next, use the following commands to enable the module within Magento:

bin/magento module:enable Yireo_EmailTester2
bin/magento cache:clean
bin/magento setup:upgrade

After these commands, the extension is ready for use in Magento. If you were already logged into the Magento Admin Panel, make sure to logout and log back in again, before proceeding. Do not forget to grab yourself a manual copy of our extension as a backup.

Downloads

Login to see the packages available to you
NamePackage TypeVersionDownload link
DownloadNo access

Frequently Asked Questions

No, it is not. As a policy, all our Yireo software is unencrypted - we do not make use of technologies like ionCube or ZendOptimizer. All PHP-code is open source, but for commercial extensions the code is only given to paying customers.

You probably would like to know if this extension is working under a specific Magento version 2.X.Y. However, from a technical point of view, the question is wrong: The major Magento version 2.X.Y is not semantical but instead used for marketing purposes. It doesn't give any guarantees.

Instead, we maintain compatibility with the actual modules that lie underneath (like Magento_Catalog or the Magento Framework). And version management for these dependencies is handled via composer. We strongly advice you to rely on composer to answer the question whether our extension works under a specific Magento version. This is the only way to guarantee compatibility in a professional way.

Alternatively, study our CHANGELOG for details on the progress we made.

Once the subscription expires, the composer feed will not give you any access to the software anymore. We recommend you to download the latest ZIP file from our site and add this to your own private composer repository instead (BitBucket, GitHub) so you keep the latest sources available through composer.

Once you purchase this extension, you get access to the downloads for a period of time (normally 12 months). The downloads folder will contain both minor updates and major updates. You can always download the latest version of the extension at any time by logging into your Yireo Account - as long as you have a support subscription that did not expire yet. Likewise, for the period of the subscription, you can use composer to install the package from the command-line. If your subscription expired, you are required to purchase a new subscription to access new updates.

Getting support

If you run into problems, we are happy to help you out with the following resources:

We usually respond within 24 hours.

Extensibility

EmailTester is written following standards like PSR-2, MEQP2, ECG and ExtDN.

You can hook into the core event email_order_set_template_vars_before or the custom event emailtester_variables. The second event allows you to inject more dummy content into your test emails.

Developer notes

We have shipped some Integration Tests with this extension, one of which is trying to preview any transactional email found by the extension. This might be slow. We don't care.

Also, this should allow you to determine whether EmailTester works together with transactional emails supplied by a third party extension. Let us know your feedback if you bump into issues here.

Unit testing

This extension ships with PHPUnit tests. The generic PHPUnit configuration in Magento 2 will pick up on these tests. To only test Yireo extensions, you can also run the following:

./vendor/bin/phpunit -c ./vendor/yireo/magento2-emailtester2/phpunit.xml.yireo

Integration testing

See the Magento document for the full procedure.

Requirements

  • magento/framework: ^101.0.1|^101.1|^102.0
  • magento/module-backend: ^100.0|^101.0
  • magento/module-catalog: ^101.0|^102.0|^103.0
  • magento/module-checkout: ^100.0
  • magento/module-config: ^100.0|^101.0
  • magento/module-customer: ^100.0|^101.0|^102.0
  • magento/module-eav: ^100.0|^101.0|^102.0
  • magento/module-email: ^100.0|^101.0
  • magento/module-payment: ^100.0
  • magento/module-quote: ^100.0|^101.0
  • magento/module-sales: ^100.0|^101.0|^102.0
  • magento/module-store: ^100.0|^101.0
  • magento/module-ui: ^101.0
  • php: >=7.0.0|<7.3
  • ext-pcre: *

Extension Changelog

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[1.2.0] - April 2019

Changed
  • Converted CHANGELOG to KeepAChangelog format
Added
  • Add Config class to phase out data-helper
  • Add suggestion of entering config values
  • Add some UI improvements for using autocomplete field
  • Add module version to main page

[1.1.9] - February 2019

Changed
  • Duplicate environment emulation in alertGrid caused "theme_dir" error

[1.1.8] - February 2019

Changed
  • Refactoring of Zend Mime to ZF3 causes failure

[1.1.7] - February 2019

Changed
  • Fix issue with changed event emailordersettemplatevars_before in M2.3

[1.1.6] - January 2019

Changed
  • Passing array to emailordersettemplatevars_before causes Fatal Error

[1.1.5] - January 2019

Changed
  • Add complete GitLab pipeline with live Magento checks
  • Try to load proper address before formatting it

[1.1.4] - November 2018

Changed
  • Rename "Email Tester" to "EmailTester" for marketplace

[1.1.3] - November 2018

Changed
  • Magento 2.3 compatibility

[1.1.2] - November 2018

Changed
  • Minor CSS improvements

[1.1.1] - November 2018

Changed
  • Prevent invalid order ID to throw unwanted exception
  • Fix untested issue in product exception

[1.1.0] - September 2018

Changed
  • Add AlertGrid support
  • Tighten composer dependencies

[1.0.5] - September 2018

Changed
  • Fix shipment items in shipment email
  • Add addresses to shipment emails
  • Testing with Magento 2.2.6 approved without any issues

[1.0.4] - August 2018

Changed
  • Supply extra variables
  • Fix checkout_payment_failed_template email
  • Add Integration Test to test all preview emails automatically

[1.0.3] - August 2018

Changed
  • Bugfix for backend template email override not working
  • Add proper CHANGELOG.md

[1.0.2] - August 2018

Changed
  • Add Trait to check for database statistics
  • Fix error with adminhtml mails that don't properly set area

[1.0.1] - July 2018

Changed
  • ExtDN compliance

[1.0.0] - June 2018

Changed
  • Rewrite manual form into UiComponent form
  • Magento ECG compliance
  • Add unit testing and integration testing
  • Only compatible with Magento 2.2 and up
Removed
  • Compatibility with 2.1 in favor of ViewModels

[0.2.12] - May 2018

Changed
  • Remove unneeded composer dev requirements

[0.2.11] - January 2018

Changed
  • Fix notice when no creditmemos are available

[0.2.10] - December 2017

Changed
  • Change title in backend menu

[0.2.9] - November 2017

Changed
  • Code beautification

[0.2.8] - October 2017

Changed
  • Fix fatal error when Store View is incorrectly configured

[0.2.7] - September 2017

Changed
  • Add basic Jasmine JS testing

[0.2.6] - August 2017

Changed
  • Code cleanup

[0.2.5] - August 2017

Changed
  • Fix compilation issues due to 1 PHP notice

[0.2.4] - August 2017

Changed
  • EQP compliance
  • Raise PHP requirement to PHP7

[0.2.3] - May 2017

Changed
  • Remove adminhtml XML layout handles which cause wrong CSS

[0.2.2] - April 2017

Changed
  • Add events email_order_set_template_vars_before and emailtester_variables

[0.2.1] - April 2017

Changed
  • Version bump

[0.2.0] - February 2017

Changed
  • Added Store View filter
  • Move all files from source/ to package root (M2.1 compliance)

[0.1.5] - November 2016

Changed
  • Fix for loading theme-specific templates

[0.1.4] - September 2016

Changed
  • Code compliance

[0.1.3] - August 2016

Changed
  • Load entities only by catching exceptions

[0.1.2] - August 2016

Changed
  • Fix DI compilation issue with wrong $context usage
  • Implement mail functionality

[0.1.1] - August 2016

Changed
  • Packaging issue

[0.1.0] - July 2016

Changed
  • Initial public release
  • Working edition with main variables
  • Some unit tests
  • Pending documentation

We are a proud member of ExtDN

ExtDN forms a network of Magento extension developers, that strive for a better extension quality - both on a technical level and from an end-users point of view. With industry leaders like Fooman and aHeadworks, ExtDN lifts up the Magento extension space to a new level. And Yireo is proud to be part of this.