
Install Python and verify version 3 or higher, then download and install PyCharm (free version). Set Python path in Windows terminal and prepare a virtual environment.
Create a project folder, set up a Python virtual environment with python -m venv, and activate it via the command prompt to isolate dependencies for Playwright tests.
Install Playwright and Pytest in a configured virtual environment, then install Playwright's browsers (Chromium, Firefox, and WebKit) for automated tests.
Create and run your first automated test with Playwright, Python, and pytest, asserting that the Google page title contains the word Google using the page fixture and browser options.
Explore how to locate input fields by placeholder text with Playwright's getByPlaceholder, then type values into the matched elements on a login/signup form.
Learn how to locate elements with the GetByTitle selector in Playwright by matching the title attribute (tooltip), including index-based disambiguation for multiple matches.
Explore Playwright selectors with Page.Locator, using css selectors by id and class, and xpath for hierarchical element location, to build robust, maintainable tests.
Explore Playwright's click command, which simulates left, right, or middle clicks with optional position and modifiers, and a force or timeout to control behavior.
Use the fill command to clear a field and insert a new value without simulating typing, then see it applied in login and registration flow with a timeout in milliseconds.
Learn how to use Playwright's check and uncheck commands to reliably set checkbox states, compare their behavior with click, and ensure the final state is true or false.
Master using Playwright's select_option to choose one or multiple options from a select element, passing a single string for one option or a list for multiple selections, with practical examples.
Learn to simulate keyboard input using Playwright's press command, including tab navigation, typing with keyboard.type, and multi key shortcuts like Ctrl+A, Ctrl+C, and Ctrl+V to automate form filling.
Explore Playwright's type() to simulate real user typing with an optional delay; unlike fill, type() doesn't clear existing text and works with fields that react to each key press.
Learn to use hover in Playwright to reveal hidden elements, test dropdowns, and click add to cart on the automation practice site with class selectors, text filters, and visible checks.
explore essential Playwright commands for dblclick, using page.locator to target the login class and h2, and applying the position parameter to simulate precise double-clicks in tests.
Learn essential playwright commands with expect to validate element visibility, text, value, and enabled state, using sample site to hover, add to cart, and verify messages with XPath and locators.
Explore Playwright's auto-wait, which eliminates time.sleep by waiting for elements to be visible, enabled, and stable before interactions. Learn how Playwright automatically checks action conditions and times out if unmet.
Learn the page object model to keep test automation clean and scalable, by organizing selectors and actions into a base page and per-page classes for Playwright, Python, and pytest.
Define a login page with page object model in Playwright and Python, mapping inputs and login button, implementing do_login, and testing login with a registered email and password.
Use pytest fixtures to create a Playwright context and page with the built-in fixture, enabling setup, teardown, and options like base URL, timeouts, and video recording.
Explore fixture scopes in Playwright tests, comparing function and session scopes. See how shared contexts affect login state, test isolation, and when to reuse fixtures for reliable runs.
Join a hands-on practice module in test automation with Playwright, Python, and Pytest by automating user registration, form filling, and account deletion using page objects like RegistrationLogin and signup.
Combine login test cases 2–4 to validate valid and invalid logins, then logout using Playwright with Python and Pytest, asserting logged in status and redirected to the login page.
Automate adding two products to the cart with Playwright, Python, and Pytest, navigating from home to products, continuing shopping, and validating prices and total in the cart.
Learn to automate file uploads and downloads with Playwright, using a stories folder and test fixtures to create links, transfer files, and verify results on WeTransfer.
Automate file downloads with Playwright, Python, and pytest by awaiting a download event, saving to a final path, and validating the file exists.
Learn to work with afframes (iframe) in Playwright by locating the outer frame by id or name, then use frame locator to access and log text from elements inside.
Use Playwright locator properties such as inner text and input value, and booleans like is visible, is enabled, is editable, is checked, and is disabled to enable conditional test flows.
Practice conditional logic with Playwright and Python by extracting a product price with inner_text, converting to int, and adding to the cart only if it's under 500.
Use a while loop with isVisible in Playwright to delete all products from the cart by repeatedly clicking the first delete button until none remain.
Learn to work with new tabs in Playwright for Python by capturing popups with expect popup, treating each tab as a separate page object, and interacting via the new tab.
Learn how to manage new windows in Playwright by listing all open pages with context, switching between windows, taking screenshots, and closing windows within tests.
Learn to run tests in parallel using the PyTUS dist library to create workers and distribute tests for faster execution, then compare with sequential runs and configure HTML reports.
Learn to create and customize HTML reports with the Pytest HTML plugin, visualize test outcomes from pass to fail to skip, and embed metadata, images, and styling for CI workflows.
Explore pytest cli arguments for Playwright to control browser, device emulation, and tracing, and see how default fixtures browser, context, and page respond.
This course covers the use of artificial intelligence.
Playwright, developed by Microsoft, has been gaining increasing traction as a complete and modern tool for web test automation. It supports multiple browsers such as Chromium, Firefox, and WebKit, and provides powerful features like automatic waiting, script recording, and integrated debugging, which simplify daily work and make tests more robust.
In this course, you will learn how to use Playwright with Python and Pytest, one of the most in-demand combinations in the market. We will start from scratch with Python installation, virtual environment creation, Playwright setup, and execution of your first automated test.
Throughout the lessons, you will master the fundamentals of Playwright, learn how to work with selectors, essential commands, element inspection, and best practices. Next, we will cover the Page Object Model (POM), a pattern that helps organize automation projects and bring greater clarity and maintainability.
You will also have a dedicated module on Pytest Fixtures, where you will learn hands-on how to create fixtures, explore their different scopes, and apply them to real-world scenarios to keep your tests well-structured and reusable.
In addition, the course covers essential topics for day-to-day automation work, such as file uploads and downloads, parallel execution, custom HTML reports, authentication using storage state, and finally CI/CD integration using Jenkins.
By the end of the course, you will have developed a complete automation project, applying concepts and practices used in real companies, ready to be used in a professional environment.
Whether you are taking your first steps in quality assurance or looking to accelerate your career, this course will change the way you understand and apply test automation.