SlideShare a Scribd company logo
Łukasz Adamczyk | Divante QA
Magento Functional
Testing Framework
a way to seriously write automated
tests in your next project?
Let’s talk about
eCommerce
Hi, my name is Lukasz Adamczyk
I am a Software Tester with few years of experience, focus
on Magento from 2 years.
email: ladamczyk@divante.com
Magento Functional Testing Framework
What is a MFTF?
● Open source test framework project for Magento ecosystem
● MFTF is evolution of MTF
● First step to learn tests automation
● Enables automation of regression tests
Magento Functional Testing Framework
What you need to do and learn to be able to
start implementing MFTF in your projects?
● No requirements for knowledge of programming languages, you should know basic of XML
tags and Xpath to find specific element on site
● Minimum version -Magento 2.2
● Selenium Server Standalone 3.1 or later
● Composer 1.3 or later
● ChromeDriver 2.33 or alternatives
● Java 1.8 or later
● You can install instance of Magento on your own physical machine and start to learning and
contributing MFTF
● All tests run in live mode or headless mode
Magento Functional Testing Framework
Why we should automate testing in
MFTF from the beginning of project
● Easy start to learning automation because of low entry threshold
● Improving the efficiency of the development team's work
● Implementation of automated tests, regardless of whether they are in the
Client's budget, because it improves the quality of work and code
● You can learn new dedicated solution to Magento
● Contributing tests - benefit for You and Divante
● Dedicated Magento solution
● Save time- you can reduce manual testing after every deploy
● You can add a test cases of new and custom functionalities
Magento Functional Testing Framework
MFTF components
● Test - whole test scenario
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/
● Annotations- comments .descriptions, titles..
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/
● Before & After- steps before and after test
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/
● ActionGroup- group of actions (fill the form..)
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/ActionGroup/
● Page - modified concept of PageObjects
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Page/
● Section - part of Page, UI elements on a page used in a test( footer, header..)
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Section/
● Entity- set that constains data(weight, password, name...)
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Data/
● Metadata- Api requests(CREATE, DELETE..)
{Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Metadata/
<Path>
├── ActionGroup
│ └── ...
├── Data
│ └── ...
├── Metadata
│ └── ...
├── Page
│ └── ...
├── Section
│ └── ...
└── Test
└── ...
Magento Functional Testing Framework
MFTF executing flow
XML CODECEPTION
SELENIUM
DRIVER
PHP
Magento Functional Testing Framework
Integrations MFTF with other tools.
● Report integration with Allure
● Integration with Browserstack
Magento Functional Testing Framework
How the test execution looks like in the
console?
Magento Functional Testing Framework
Sample Allure report
Magento Functional Testing Framework
Disadvantages and problems
● Very complicated file structure in tests directory
● Hard to install and configuration
● Infinite migration from MTF tests
● No specific guidelines for creating new test cases
● No coverage of all functionalities
● Only on >= Magento 2.2
Magento Functional Testing Framework
How to start contributing to MFTF
tests
● Documentation-
https://devdocs.magento.com/mftf/docs/getting-starte
d.html
● MFT test migration to MFTF - 315 issues
https://github.com/magento/magento-functional-tests
-migration/issues
● Magento Community Engineering
Slack - #mftf
https://magentocommeng.slack.com/
Do A Discovery
… or how to figure out what a client needs?
Magento Functional Testing Framework a way to seriously write automated tests in your next project?
LEARN MORE AT
DIVANTE.COM/BLOG

More Related Content

Similar to Magento Functional Testing Framework a way to seriously write automated tests in your next project? (20)

PPTX
Dusan Lukic Magento 2 Integration Tests Meet Magento Serbia 2016
Dusan Lukic
 
PDF
Automation for developers
Dharshana Kasun Warusavitharana
 
PDF
Quality for developers
Dharshana Kasun Warusavitharana
 
PDF
Mykola Kovsh - Functional API automation with Jmeter
Ievgenii Katsan
 
PPTX
php[world] Magento101
Mathew Beane
 
PDF
Magento best practices
Alessandro Ronchi
 
PDF
Architecture and Analytical Study of Magento
IRJET Journal
 
PDF
Engineering Student MuleSoft Meetup#4 - API Testing With MuleSoft
Jitendra Bafna
 
PPTX
Magento Function Testing Framework - Intro and Overview
Tom Erskine
 
PPTX
API automation with JMeter + Bamboo CI
Mykola Kovsh
 
PPT
Qtp Training Deepti 1 Of 4187
Azhar Satti
 
PDF
Getting started with karate dsl
Knoldus Inc.
 
PDF
A Successful Magento Project From Design to Deployment
Joshua Warren
 
PDF
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Fwdays
 
PDF
Feature Flags. Reducing risks during shipping changes/
Aleksandr Makhomet
 
PPTX
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
ShivareddyGangam
 
PDF
Continuous Integration In Php
Wilco Jansen
 
PPTX
Automation testing
Mona M. Abd El-Rahman
 
PDF
WSO2 Test Automation Framework : Approach and Adoption
WSO2
 
PPTX
Jenkins as the Test Reporting Framework
Nitin Sharma
 
Dusan Lukic Magento 2 Integration Tests Meet Magento Serbia 2016
Dusan Lukic
 
Automation for developers
Dharshana Kasun Warusavitharana
 
Quality for developers
Dharshana Kasun Warusavitharana
 
Mykola Kovsh - Functional API automation with Jmeter
Ievgenii Katsan
 
php[world] Magento101
Mathew Beane
 
Magento best practices
Alessandro Ronchi
 
Architecture and Analytical Study of Magento
IRJET Journal
 
Engineering Student MuleSoft Meetup#4 - API Testing With MuleSoft
Jitendra Bafna
 
Magento Function Testing Framework - Intro and Overview
Tom Erskine
 
API automation with JMeter + Bamboo CI
Mykola Kovsh
 
Qtp Training Deepti 1 Of 4187
Azhar Satti
 
Getting started with karate dsl
Knoldus Inc.
 
A Successful Magento Project From Design to Deployment
Joshua Warren
 
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Fwdays
 
Feature Flags. Reducing risks during shipping changes/
Aleksandr Makhomet
 
OS-Final-Transform-Manual-Testing-Processes-to-incorporate-Automatio....pptx
ShivareddyGangam
 
Continuous Integration In Php
Wilco Jansen
 
Automation testing
Mona M. Abd El-Rahman
 
WSO2 Test Automation Framework : Approach and Adoption
WSO2
 
Jenkins as the Test Reporting Framework
Nitin Sharma
 

More from Divante (20)

PDF
The eCommerce Platforms in the Global Setup
Divante
 
PDF
eCommerce Trends 2020
Divante
 
PDF
Async & Bulk REST API new possibilities of communication between systems
Divante
 
PDF
Die Top 10 Progressive Web Apps in der Modernbranche
Divante
 
PDF
progressive web apps - pwa as a game changer for e-commerce - meet magento i...
Divante
 
PDF
Customer churn - how to stop it?
Divante
 
PDF
eCommerce trends 2019 by Divante.co
Divante
 
PDF
How to create a Vue Storefront theme
Divante
 
PDF
Game changer for e-commerce - Vue Storefront - open source pwa
Divante
 
PPTX
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Divante
 
PDF
How to successfully onboard end-clients to a B2B Platform - Magento Imagine ...
Divante
 
PDF
eCommerce trends from 2017 to 2018 by Divante.co
Divante
 
PDF
Designing for PWA (Progressive Web Apps)
Divante
 
PDF
Why is crud a bad idea - focus on real scenarios
Divante
 
PDF
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
Divante
 
PDF
Pimcore Overview - Pimcore5
Divante
 
PDF
Pimcore E-Commerce Framework - Pimcore5
Divante
 
PDF
The biggest stores on Magento
Divante
 
PDF
B2B Commerce - how to become successful
Divante
 
PDF
Budgeting in SCRUM by Divante
Divante
 
The eCommerce Platforms in the Global Setup
Divante
 
eCommerce Trends 2020
Divante
 
Async & Bulk REST API new possibilities of communication between systems
Divante
 
Die Top 10 Progressive Web Apps in der Modernbranche
Divante
 
progressive web apps - pwa as a game changer for e-commerce - meet magento i...
Divante
 
Customer churn - how to stop it?
Divante
 
eCommerce trends 2019 by Divante.co
Divante
 
How to create a Vue Storefront theme
Divante
 
Game changer for e-commerce - Vue Storefront - open source pwa
Divante
 
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Divante
 
How to successfully onboard end-clients to a B2B Platform - Magento Imagine ...
Divante
 
eCommerce trends from 2017 to 2018 by Divante.co
Divante
 
Designing for PWA (Progressive Web Apps)
Divante
 
Why is crud a bad idea - focus on real scenarios
Divante
 
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
Divante
 
Pimcore Overview - Pimcore5
Divante
 
Pimcore E-Commerce Framework - Pimcore5
Divante
 
The biggest stores on Magento
Divante
 
B2B Commerce - how to become successful
Divante
 
Budgeting in SCRUM by Divante
Divante
 
Ad

Recently uploaded (20)

PPTX
sajflsajfljsdfljslfjslfsdfas;fdsfksadfjlsdflkjslgfs;lfjlsajfl;sajfasfd.pptx
theknightme
 
PPTX
Random Presentation By Fuhran Khalil uio
maniieiish
 
PPTX
ONLINE BIRTH CERTIFICATE APPLICATION SYSYTEM PPT.pptx
ShyamasreeDutta
 
PDF
𝐁𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓
hokimamad0
 
PDF
Build Fast, Scale Faster: Milvus vs. Zilliz Cloud for Production-Ready AI
Zilliz
 
PPTX
Simplifying and CounFounding in egime.pptx
Ryanto10
 
PDF
Digital Security in 2025 with Adut Angelina
The ClarityDesk
 
PDF
𝐁𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓
hokimamad0
 
PPTX
Internet_of_Things_Presentation_KaifRahaman.pptx
kaifrahaman27593
 
PPTX
Cost_of_Quality_Presentation_Software_Engineering.pptx
farispalayi
 
PDF
Technical Guide to Build a Successful Shopify Marketplace from Scratch.pdf
CartCoders
 
PDF
Azure_DevOps introduction for CI/CD and Agile
henrymails
 
PPT
Computer Securityyyyyyyy - Chapter 1.ppt
SolomonSB
 
PDF
The Complete Guide to Chrome Net Internals DNS – 2025
Orage Technologies
 
PPTX
unit 2_2 copy right fdrgfdgfai and sm.pptx
nepmithibai2024
 
PDF
The-Hidden-Dangers-of-Skipping-Penetration-Testing.pdf.pdf
naksh4thra
 
PPTX
ipv6 very very very very vvoverview.pptx
eyala75
 
PPTX
原版西班牙莱昂大学毕业证(León毕业证书)如何办理
Taqyea
 
PDF
The Power and Impact of Promotion most useful
RajaBilal42
 
PPTX
PE introd.pptxfrgfgfdgfdgfgrtretrt44t444
nepmithibai2024
 
sajflsajfljsdfljslfjslfsdfas;fdsfksadfjlsdflkjslgfs;lfjlsajfl;sajfasfd.pptx
theknightme
 
Random Presentation By Fuhran Khalil uio
maniieiish
 
ONLINE BIRTH CERTIFICATE APPLICATION SYSYTEM PPT.pptx
ShyamasreeDutta
 
𝐁𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓
hokimamad0
 
Build Fast, Scale Faster: Milvus vs. Zilliz Cloud for Production-Ready AI
Zilliz
 
Simplifying and CounFounding in egime.pptx
Ryanto10
 
Digital Security in 2025 with Adut Angelina
The ClarityDesk
 
𝐁𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓
hokimamad0
 
Internet_of_Things_Presentation_KaifRahaman.pptx
kaifrahaman27593
 
Cost_of_Quality_Presentation_Software_Engineering.pptx
farispalayi
 
Technical Guide to Build a Successful Shopify Marketplace from Scratch.pdf
CartCoders
 
Azure_DevOps introduction for CI/CD and Agile
henrymails
 
Computer Securityyyyyyyy - Chapter 1.ppt
SolomonSB
 
The Complete Guide to Chrome Net Internals DNS – 2025
Orage Technologies
 
unit 2_2 copy right fdrgfdgfai and sm.pptx
nepmithibai2024
 
The-Hidden-Dangers-of-Skipping-Penetration-Testing.pdf.pdf
naksh4thra
 
ipv6 very very very very vvoverview.pptx
eyala75
 
原版西班牙莱昂大学毕业证(León毕业证书)如何办理
Taqyea
 
The Power and Impact of Promotion most useful
RajaBilal42
 
PE introd.pptxfrgfgfdgfdgfgrtretrt44t444
nepmithibai2024
 
Ad

Magento Functional Testing Framework a way to seriously write automated tests in your next project?

  • 1. Łukasz Adamczyk | Divante QA Magento Functional Testing Framework a way to seriously write automated tests in your next project?
  • 2. Let’s talk about eCommerce Hi, my name is Lukasz Adamczyk I am a Software Tester with few years of experience, focus on Magento from 2 years. email: [email protected]
  • 3. Magento Functional Testing Framework What is a MFTF? ● Open source test framework project for Magento ecosystem ● MFTF is evolution of MTF ● First step to learn tests automation ● Enables automation of regression tests
  • 4. Magento Functional Testing Framework What you need to do and learn to be able to start implementing MFTF in your projects? ● No requirements for knowledge of programming languages, you should know basic of XML tags and Xpath to find specific element on site ● Minimum version -Magento 2.2 ● Selenium Server Standalone 3.1 or later ● Composer 1.3 or later ● ChromeDriver 2.33 or alternatives ● Java 1.8 or later ● You can install instance of Magento on your own physical machine and start to learning and contributing MFTF ● All tests run in live mode or headless mode
  • 5. Magento Functional Testing Framework Why we should automate testing in MFTF from the beginning of project ● Easy start to learning automation because of low entry threshold ● Improving the efficiency of the development team's work ● Implementation of automated tests, regardless of whether they are in the Client's budget, because it improves the quality of work and code ● You can learn new dedicated solution to Magento ● Contributing tests - benefit for You and Divante ● Dedicated Magento solution ● Save time- you can reduce manual testing after every deploy ● You can add a test cases of new and custom functionalities
  • 6. Magento Functional Testing Framework MFTF components ● Test - whole test scenario {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/ ● Annotations- comments .descriptions, titles.. {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/ ● Before & After- steps before and after test {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/ ● ActionGroup- group of actions (fill the form..) {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/ActionGroup/ ● Page - modified concept of PageObjects {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Page/ ● Section - part of Page, UI elements on a page used in a test( footer, header..) {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Section/ ● Entity- set that constains data(weight, password, name...) {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Data/ ● Metadata- Api requests(CREATE, DELETE..) {Magento_Root}/app/code/Magento/{Module}/Test/Mftf/Test/Metadata/ <Path> ├── ActionGroup │ └── ... ├── Data │ └── ... ├── Metadata │ └── ... ├── Page │ └── ... ├── Section │ └── ... └── Test └── ...
  • 7. Magento Functional Testing Framework MFTF executing flow XML CODECEPTION SELENIUM DRIVER PHP
  • 8. Magento Functional Testing Framework Integrations MFTF with other tools. ● Report integration with Allure ● Integration with Browserstack
  • 9. Magento Functional Testing Framework How the test execution looks like in the console?
  • 10. Magento Functional Testing Framework Sample Allure report
  • 11. Magento Functional Testing Framework Disadvantages and problems ● Very complicated file structure in tests directory ● Hard to install and configuration ● Infinite migration from MTF tests ● No specific guidelines for creating new test cases ● No coverage of all functionalities ● Only on >= Magento 2.2
  • 12. Magento Functional Testing Framework How to start contributing to MFTF tests ● Documentation- https://devdocs.magento.com/mftf/docs/getting-starte d.html ● MFT test migration to MFTF - 315 issues https://github.com/magento/magento-functional-tests -migration/issues ● Magento Community Engineering Slack - #mftf https://magentocommeng.slack.com/
  • 13. Do A Discovery … or how to figure out what a client needs?