Applitools Holiday Shopping Hackathon
This is my Submission for Applitools Holiday Shopping Hackathon using Applitools Ultrafast Grid
Test Framework Architecture
Components of Test Framework
Elements
(All the locators are placed inElements
classes for maintainability)Actions
(All the resuable logics are added inAction
classes which directly calls the locators fromElements
classes)Common Actions
(Selenium related logics are placed here)Page Actions
(Web site related steps & logics are placed here)
Commmon Utilities
(Common libraries of the project are placed here)Base Test
(Contains all the test methods for reusability in multiple cycles)Test Runs
(Runs the same set of tests on different environments with different configurations on respective planned test cycles)
Primary Goal
The purpose of this test framework is to test 3 different URL versions of the same Applifashion website in different SDLC stages before the public release, where the developed website is initially bug-free in "V1 production version" and is later found buggy when tested in "Dev-branch version (buggy)". Post fixing of the discovered bugs, our tests are reran to verify if the website is production-ready post testing in "Final production version"
- V1 production version (bug-free)
- Dev-branch version (buggy)
- Final production version (fixed & bug-free)
Instructions
This test framework is developed on JRE SE 14 and run using Applitools Eyes & Selenium WebDriver in Java language, and is primarily built on Maven, additionally using Junit5 test framework on Eclipse IDE.
Prerequisites
- Programming Language: Java 14
- Build Tool: Maven 4.0.0
- Test Runner: Junit5 (junit-jupiter-api 5.6.0)
- Other Dependencies:
- selenium-java 4.0.0-alpha-5
- selenium-chrome-driver 4.0.0-alpha-7
- Applitools Eyes 3.178.0
How to run the tests?
-
Clone the above repository or Download as Zip and import as Maven project in preferred IDE
-
Make sure to have maven configured in the machine and run the pom.xml file to install all dependencies into the test project
-
Go to TestRuns package of the test project framework
-
Right click
on the test class Part1Tests, SelectRun
as & Click onJunit Test
-
When all tests in test class Part1Tests is run successfully, observe the test result in Applitools dashboard
-
Similarly,
Right click
on the test class Part2Tests, SelectRun
as & Click onJunit Test
-
When all tests in test class Part2Tests is run successfully, observe the test result in Applitools dashboard
-
Similarly,
Right click
on the test class Part3Tests, SelectRun
as & Click onJunit Test
-
When all tests in test class Part3Tests is run successfully, observe the test result in Applitools dashboard
Test Results in Applitools Dashboard:
V1 Prod version URL
https://eyes.applitools.com/app/test-results/00000251794078845021?accountId=dQ9sYE9DBkKu1ffPFyh7oA~~&display=details&top=00000251794068600374%284%29
Dev version URL
Test 2 RCA
https://eyes.applitools.com/app/test-results/00000251794073426466/00000251794073424605/steps/1/edit?accountId=dQ9sYE9DBkKu1ffPFyh7oA~~&diff=eyJub2RlMSI6eyJ0b3AiOjc2MSwibGVmdCI6MTA2NCwid2lkdGgiOjEyMSwiaGVpZ2h0Ijo0MH0sIm5vZGUxaGFzaCI6MTcxNTYzMjY0Nywibm9kZTIiOnsidG9wIjo3NTEsImxlZnQiOjEwNjQsIndpZHRoIjoxMjEsImhlaWdodCI6NDB9LCJub2RlMmhhc2giOjE3MTU2MzI2NDd9&mode=step-editor
Final Prod version URL
https://eyes.applitools.com/app/test-results/00000251794068600374?accountId=dQ9sYE9DBkKu1ffPFyh7oA~~&display=details&top=00000251794068600374%284%29