Size: a a a

testing_in_python

2019 February 01

СС

Сказочный Сникерс in testing_in_python
если на тесте висит @pytest.mark.usefixtures(‘request_modificator’), то берем из опций, который с командлайна и параметризуем фикстуру request_modificator
источник

СС

Сказочный Сникерс in testing_in_python
Evgenii B
request_modificator ты потом передаешь как фикстуру в другую фикстуру, так?
можно и так
источник

СС

Сказочный Сникерс in testing_in_python
я вешаю через @pytest.mark.usefixtures
источник

СС

Сказочный Сникерс in testing_in_python
мне не надо получать то что делает эта фикстура, там дальше магия будет. если надо, чтобы возвращался результат, то да, в другую фикстуру или прямо в тест
источник

EB

Evgenii B in testing_in_python
ну вот она должна передавать как раз, отфилтрованный список девайсов, из которого фикстура подготовки капабилитис будет ваять капабилитис
источник

СС

Сказочный Сникерс in testing_in_python
пихай в другую фикстуру, норм план. или сразу в тест
источник

EB

Evgenii B in testing_in_python
я хочу делать так:

pytest_generate_tests:
   # making filtered 'devices' list available

capability_fixture:
   # yielding from 'device' as a parameter
   # preparing capability dict

setup_appium(capability_fixture):
  # calling driver with a set of capabilities that are parametrized
источник

EB

Evgenii B in testing_in_python
по идее ок, но не хотелось бы, чтобы pytest_generate_tests обрастал сильно большой логикой
источник

СС

Сказочный Сникерс in testing_in_python
Evgenii B
по идее ок, но не хотелось бы, чтобы pytest_generate_tests обрастал сильно большой логикой
а есть такая вероятность? ну в целом пусть обрастает, если разделить блоками и добавить комменты то че бы и нет
источник

EB

Evgenii B in testing_in_python
мне только не нравится, что мне фикстуру capabilities нужно делать уровня function
источник

EB

Evgenii B in testing_in_python
т.е. в моем представлении, набор capabilities как только получил аргумент из CLI должен будет на всю сессию определить данные. а значит фиктсура подготовки capabilities должна быть session scoped,
источник

EB

Evgenii B in testing_in_python
ScopeMismatch: You tried to access the 'function' scoped fixture 'device' with a 'session' scoped request object, involved factories
tests\conftest.py:18:  def setup_capabilities(pytestconfig, device)
appium-env\lib\site-packages\_pytest\fixtures.py:297:  def get_direct_param_fixture_func(request)
======================================= 1 error in 0.07 seconds =======================================
источник

EB

Evgenii B in testing_in_python
но при попытке делать ее session scope вот такая ебань вылазит :(
источник

EB

Evgenii B in testing_in_python
хотя...мб в pytest_generate_tests как-то можно указать, что device это 'session' фикстура
источник

EB

Evgenii B in testing_in_python
@snicks92 , а ты в pytest_generate_tests обращался к инициализированным маркерам в тесте? чтобы  например передавая

-m ios

не только работали тесты, помеченные как @pytest.mark.ios,

а еще и список доступных девайсов фильтровался
источник

AM

Alexander Makarenko in testing_in_python
ребят, установил allure-pytest, после тест рана отчеты появились. Но, когда пишу allure tests/allure_reports
то ошибка command not found: allure
Что не так?
источник

AK

Anton Kachurin in testing_in_python
установи allure
источник

AK

Anton Kachurin in testing_in_python
он идёт отдельно
источник

AM

Alexander Makarenko in testing_in_python
установил через brew
источник

EB

Evgenii B in testing_in_python
открой новую консоль и напиши там which allure
источник