Upload
neklo
View
392
Download
8
Embed Size (px)
Citation preview
Magento applications and modules functional
testing
About meIgor Bondarenko Test Lead 10 years in QA Founder of QA Club
Minsk Community
Our extensions
Extend payment method
Add new delivery method
Customize all images in catalog
Instagram widget
What to test?
• Installation testing• Main functionality testing• Image processing testing• Catalog and Product Page testing• Payment methods testing• Shipping methods testing• Tests automation• …
Installation testing: Problems
• Compatibility with Magento Versions:– Community Edition 1.4.x – 1.9.x– Enterprise Edition 1.12.x – 1.13.x
• Compatibility of own extensions• Compatibility with third party extensions
Solving the problems
Problem: Compatibility with a lot of Magento versions
Solution:Virtual Machines server with CI tool integration
Solving the problems
Problem: A lot of compatibility tests
Solution:• Pairwise• Boundary values testing
Solving the problems
Problem: Compatibility with third party extensions
Solution:• Do NOT test• Testing on copy of working Magento
Something else?
• Version update testing• Activation\Deactivation testing• Deletion testing
Main functionality
Image processing
• Check all file types• Test on all image sizes• Check all places on site
Working with product
• Check both HTTP & HTTPS• Test on different languages• Perform cross browser testing• Install custom color theme on Magento• FPC
Payment methods
• Adding\Editing of one payment method should NOT affect the rest
• Checking all payment methods• Multishipping testing• Registration on checkout• Guest checkout
Shipping methods
• Adding\Editing of one shipping method should NOT affect the rest
• Checking all shipping methods
Perfomance testing
Clent side perfomance
• Test with real data• Test with real loading
MagentoConnect
• Create a package• Upload package• Install package from MagentoConnect• Unpack and install per file
What to automate?
• VM Creation• Installation• Test data preparation• UI Testing
Selenium IDE
• Quick tests• Support a lot of programming languages• No frameworks• Could be used in future WebDriver tests• Could be attached to defects
Key success points
• Prepare the test environment• Check how your extension affect all the
system• Check client side performance• Automate complex and routine tasks