Когда я запускаю тест с параметрами я должен быть в состоянии получить доступ фактический параметр теста думал по просьбе в param
атрибут, но вместо этого получил эту ошибку:AttributeError: подзапрос экземпляр не имеет атрибута «параметров»
AttributeError: SubRequest instance has no attribute 'param'
Этот кажется, появляется только тогда, когда я использую тестовую структуру pytest-bdd
. В следующем примере моего испытательного стенда:
@pytest.fixture(params=(
{
'driver_name': 'remote',
'url': 'http://x.x.x.x:4444/wd/hub',
'browser': 'safari',
'platform': 'MAC'
},
{
'driver_name': 'remote',
'url': 'http://x.x.x.x:4444/wd/hub',
'browser': 'chrome',
'platform': 'MAC'
}
))
def browser_kwargs(request):
"""Webdriver kwargs."""
return request.param
@pytest.fixture
def browser(browser_kwargs):
"""Splinter webdriver"""
return Browser(**browser_kwargs)
Можете ли вы опубликовать verson пакетов python, которые вы используете? – lapinkoira
@lapinkoira: splinter == 0.7.2, pytest == 2.7.0, pytest-bdd == 2.6.2, pytest-django == 2.8.0, Django == 1.7.4, Python 2.7.6 –
почему Если вы хотите использовать pytest-splinter и параметризовать splinter_webdriver, если вам нужно? –