О тестировании
Когда использовать parametrize, а когда выносить всё в отдельный тест?
Если способ проверки при разных значениях отличается, лучше вынести, но если чуть-чуть - можно оставить. В целом parametrize - он про одно и то же поведение при разных параметрах, читай один класс эквивалентности. Если способ совпадет, а вариативность входных данных к выходным данным == 1 к 1 - это идеальное применение parametrize.
Проверять исключительные ситуации лучше в отдельных тестах, потому что каждая исключительна по своему. Более 3-4 параметров parametrize тоже являются “запашком”.
Как называть переменные полей в page object’ах?
Если есть имя на фронте, используем его, если есть имя на бэке - его. Только если нет ни того ни другого, придумываем имя переменной самостоятельно.
Допустимо исключить префикс имени поля, если он уже присутствует в названии класса и переменной страницы:
- ExperimentPage.experiment_size, experiment.experiment_size - плохо
- ExperimentPage.size, experiment.size - хорошо