Mastering Selenium in Python with pytest - 28 hours

Course available as online Interactive
Course available to schedule for your team
Learn More

This practical course establishes a strong foundation for developing test automation scripts and frameworks in Python tailored for web-based applications. You'll delve into Selenium WebDriver, the de facto standard library for managing browsers, enabling automated interactions with the browser's user interface. Through this course, you'll gain mastery of best practices in test automation, ensuring that your scripts are not only robust but also easy to maintain. The combination of Selenium with pytest, a widely-used library for unit and functional test automation, provides a reliable framework for fulfilling all test automation needs.


This comprehensive course is designed for individuals aiming to leverage their Python skills for the highly sought-after profession of test automation engineering


Proficiency in Python with IDE of your choice (PyCharm is preferred)
We recommend completing our course “Mastering Python for Testers.
Familiarity with HTML is preferred but not mandatory

What participants will learn?
  1. Creating projects integrating Selenium WebDriver and pytest
  2. Applying pytest framework for functional testing
  3. Utilizing Selenium WebDriver for effective browser management
  4. Tools facilitating the identification of web elements on web pages
  5. Automating interactions with standard web controls
  6. Synchronizing script execution with browser states
  7. Implementing the PageObject pattern for enhanced script maintainability

Course Outline
  • pytest as a functional test automation framework
    • pytest concepts
    • Assertions
    • Using test functions and test methods
    • Running subsets of the tests
    • Fixtures and their scopes
    • Grouping tests for execution
    • pytest markers
    • Data-driven parameterized tests
  • Selenium WebDriver
    • Selenium architecture: direct and remote execution
    • WebDriver and WebElement interfaces
    • Cross-browser testing
    • Screenshots of visible area and web elements
    • HTML, CSS, and JavaScript – short introduction
    • Web element locators including XPath and CSS
    • Relative locators
    • Tools supporting locator selection: ChroPath and Ranorex Selocity
    • Checking text and links
    • Working with edit boxes, dropdown menus, radio buttons, and check buttons
    • Working with multiple tabs and multiple browser windows
    • Checking element existence and states
    • Working with HTML tables
    • Automating mouse movements
    • Handling alerts
    • Synchronization: implicit wait, explicit wait, fluent wait, and fixed wait
    • PageObject pattern for script maintainability
    • RemoteWebDriver for running tests on a remote machine