This project is a solution to the Automation Engineer coding exercise provided by LOOP Digital Financial Services, the Digital Division of NCBA Bank. The task involves automating several steps using Selenium with any programming language, in my case Python. The tasks includes; account creation on Google and later logging in Jumia with the created Google account, product search, adding the product to the cart, navigating to it and then generating a summary status report.
- Python 3.x
- Google Chrome browser
- ChromeDriver installed and added to your PATH
- Allure command-line tool installed - Installation Guide:) https://allurereport.org/docs/install/
Install Dependencies:
pip install these packages;
Selenium
Allure-pytest
Pytest
1. pip install -r requirements.txt or run Main.py Sript.
2. Run the Test:
pytest tests/test_automation_flow.py --alluredir=reports/allure_results
3. View the Allure Report:
allure serve reports/allure_results
The test performs the following steps:
- Create a Google account: Automates the signup process on Google.
- Create a Jumia account: Uses the Google account email to sign up on Jumia.
- Search for the product: Searches for the product ?ailyons hd-199a electric dry iron box silver & black (1 yr wrty)? on Jumia.
- Add the product to the cart: Adds the found product to the shopping cart.
- Navigate to the cart: Verifies that the product has been added by navigating to the cart.
- Browser Configuration: The default browser used is Chrome. If you wish to use a different browser, update the webdriver.Chrome() in conftest.py to the desired WebDriver.
- Test Data: Update the test data like email and password in the test_automation_flow.py or use a configuration file to manage test data.
- ChromeDriver Issues: Ensure that ChromeDriver is compatible with your Chrome browser version.
- Email Sending Issues: Check your email credentials and ensure that your Gmail settings allow less secure apps or use an App Password if 2FA is enabled.
For any questions or issues, feel free to reach out:
Email: [email protected]
Phone: +254701684150