Module 2: Test fixtures

# conftest.py

import pytest
from selenium import webdriver

@pytest.fixture(scope="module")
def chrome_driver():
    driver = webdriver.Chrome()
    yield driver
    driver.quit()

@pytest.fixture(scope="function")
def login(chrome_driver):
    chrome_driver.get("https://example.com/login")
    chrome_driver.find_element_by_id("username").send_keys("testuser")
    chrome_driver.find_element_by_id("password").send_keys("testpass")
    chrome_driver.find_element_by_id("login-btn").click()
# test_login.py

def test_login_successfully(login):
    assert "Welcome" in login.title

def test_logout_successfully(login):
    login.find_element_by_id("logout-btn").click()
    assert "Login" in login.title

Last updated