I optimized the code by improving algorithm efficiency and memory management, ensuring better performance and resource usage. Additionally, I enhanced adherence to OOP principles, implementing design patterns and improving encapsulation for better modularity. In Task 1, I noted that changes to the Amazon website now prevent using multiple filters simultaneously, which impacts our approach. I also developed detailed test cases, focusing on edge scenarios to ensure robustness and reliability, leading to a more maintainable and scalable codebase.
This Selenium automation tasks utilize the Page Object Model (POM) design pattern to streamline the testing process. By encapsulating web elements and their related functionality into separate classes, the code becomes modular and easier to maintain. With POM, each page or component has its own corresponding class, enhancing code reusability and readability. Selenium's powerful features are leveraged to interact with web elements and simulate user actions such as clicking buttons and entering text, ensuring a robust and efficient testing framework. Meanwhile, automate data extraction from a CSV file and perform statistical analysis using Python, leveraging libraries like pandas. This streamlines data processing, reducing error margins and manual intervention. Python's scripting capabilities facilitate quick and accurate data insights, paving the way for more complex analysis pipelines. These automation tasks enhance productivity, ensuring seamless execution and informed decision-making.
- Scenario 1
- Open amazon link “https://www.amazon.eg/” then type " car accessories"
- Select the first Item
- Add item to the cart
- Go to the cart and check that item is added successfully
- Scenario 2
- Open today's deals
- from the left side filters select "grocery"
- from the discount part choose "10% off or more"
- go to the fourth page then select any item and add it to the cart
In this scenario, in the 2nd step, there was no filter for "Headphones" so instead of using Headphones as a filter, we used "Electronics" and there was no force page; we chose the 2nd page
- Open this website: “https://ksrtc.in/oprs-web/guest/home.do?h=1”
- Choose the following ((from "CHIKKAMAGALURU" to "BENGALURU”)) from the popular routes
- Click “Search for bus”
- Select a seat
- Choose the boarding point and dropping point
- Fill the “Customer” and “Passenger” details (Note: you can use this phone number: 6789125987)
- Click on “make payment” and fill all the fields without submitting the payment
- Remove any duplicates in the table
- Remove any decimal places in the Age column
- Convert the USD salary to EGP
- Print in the console some stats like:
- Average age
- Median Salaries
- Ration between males and female employees
- write the data in a new CSV file