Course Outline
Getting Started with Selenium and Python
- The role of Selenium in web testing
- Why Python is preferred over other languages for test automation
- Practical applications of Selenium and Python in real-world scenarios
Setup and Installation
- Configuring Python and IDEs such as PyCharm and VS Code
- Installing Selenium and required WebDrivers
- Setting up Pytest as the primary test runner
Selenium 4 Architecture and Key Components
- Selenium IDE: Rapid record-and-playback functionality
- Selenium WebDriver: Core APIs for browser automation
- Selenium Grid: Enabling parallel and distributed test execution
Essential Python Scripting for Automation
- Core Python concepts relevant to testers
- Managing data structures within test scripts
- Leveraging Pytest for assertions and fixture management
Practical WebDriver Implementation
- Navigating through web applications
- Element location strategies: Locators, CSS selectors, XPath, and relative locators
- Managing interactions with forms, alerts, iframes, and dropdowns
Architecting Frameworks with Page Object Model (POM)
- Overview of the POM approach
- Creating reusable page classes
- Implementing data-driven and keyword-driven testing strategies
Advanced Automation Techniques
- Executing tests on various browsers
- Parallel execution using Selenium Grid and Pytest-xdist
- Strategies for effective cross-browser testing
Continuous Integration and Test Reporting
- Integrating tests with Jenkins, GitHub Actions, or GitLab CI
- Creating reports using Allure or Pytest-html
- Applying version control best practices with Git
Troubleshooting and Optimization
- Resolving common issues related to locators, waits, and synchronization
- Mitigating flaky tests
- Best practices for maintaining robust test suites
Recap and Future Steps
Requirements
- Foundational experience in Python programming
- Basic understanding of test automation principles
- Familiarity with web application structures and browser operations
Target Audience
- Quality assurance testers
- Software developers
- QA automation specialists
Testimonials (3)
hands on exercises, easier to retain information
ashley bolen - Insurance Corporation of British Columbia
Course - Test Automation with Selenium
Hands-on exercises related to content really helps to understand more about each topic. Also, style of start class with lecture and continue with hands-on exercise is good and helpful to relate with the lecture that presented earlier.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Course - Introduction to Data Science and AI using Python
The instructor's teaching style was very good.