15. Data-Driven Testing with Parametrize

Data-Driven Testing with Pytest

import pytest

@pytest.mark.parametrize("user, password, expected_error", [
("invalid_user", "pass123", "User does not exist"),
("valid_user", "wrong_pass", "Incorrect password"),
("", "pass123", "Username is required"),
])
def test_login_failures(driver, user, password, expected_error):
login_page = LoginPage(driver)
login_page.login(user, password)
assert expected_error in driver.page_source

Task

  • Implement generate_scenario_list:
  • 1. Accept users list and roles list.
  • 2. Return all (user, role) combinations.
💡Common doubts
Did you like the problem?
Lesson 15 of 16
Python
Loading code editor…
Next