Welcome to the Aviv QA Web Technical Test! This challenge involves automating test scenarios for the demo.nopcommerce.com website using your preferred programming language (TypeScript, JavaScript, Java, Python, or .NET) and your preferred test automation framework or library (Playwright, WebdriverIO, Cypress, TestCafe, or Selenium Webdriver).
The focus is on implementing automation tests following the Page Object Model (POM) and Data-Driven Testing (DDT) principles for better maintainability and readability.
- Read and comprehend the test automation challenge requirements provided in this repository.
- Fork the original repository to your GitHub account to submit pull requests.
- Create a New Branch to work on your changes.
- Implement test automation according to the challenge requirements. Follow best practices for writing clear, maintainable, and efficient code.
- Commit your changes with clear and concise commit messages representing logical steps in your development process.
- Push your branch to your forked repository on GitHub.
- Navigate to your forked repository on GitHub and create a new pull request from your feature branch to the original repository's main branch.
- In the PR description, explain the changes made, the approach taken, and any challenges faced. Be clear and concise.
- Navigate to the website.
- Click on the "Register" link.
- Fill in valid information for a new user.
- Verify successful registration and redirection to the homepage.
- Log in with the newly created user credentials.
- Add a product to the shopping cart.
- Proceed to the checkout process.
- Verify the checkout process steps: Cart, Address, Shipping, Payment.
- Fill in valid shipping information.
- Choose a shipping method.
- Select a payment method.
- Complete the purchase.
- Verify successful purchase and user confirmation.
- Navigate to the website.
- Click on the "Register" link.
- Fill in invalid information for a new user.
- Verify the user is not registered, and an appropriate error message is displayed.
- Navigate to the website.
- Log in with valid existing user credentials.
- Add a product to the shopping cart.
- Proceed to the checkout process.
- Verify the checkout process steps: Cart, Address, Shipping, Payment.
- Fill in valid shipping information.
- Choose a shipping method.
- Select a payment method.
- Complete the purchase.
- Verify successful purchase and user confirmation.
- Navigate to the website.
- Add multiple products to the shopping cart.
- Verify correct products and quantities in the shopping cart.
- Modify the quantity of a product.
- Remove a product from the cart.
- Verify the cart is updated accordingly.
- The project should be integrated with (CircleCI, GitLab, Jenkins, or GitHub Actions) for continuous integration.
- The automation suite is triggered on each push or pull request to the repository.
- Test reports should be generated after each test run and can be found in the
/reports
directory.
- Document any challenges faced during the automation process and how they were addressed.
- Highlight any improvements or optimizations considered for future iterations.
- You can earn bonus points for:
- Implementing parameterized tests.
- Using environmental configurations.
- Demonstrating knowledge of parallel test execution.
Best regards,
Aviv Quality Team