将会话范围的fixture与py.test的pytest-mozwebqa插件配合使用时的ScopeMismatch [英] ScopeMismatch on using session scoped fixture with pytest-mozwebqa plugin for py.test

查看:24
本文介绍了将会话范围的fixture与py.test的pytest-mozwebqa插件配合使用时的ScopeMismatch的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用pytest-mozwebqa插件来运行一些Selenium测试。对于所有测试,我只想登录到应用程序一次,所以我尝试在conftest.py中使用会话范围的装置,但得到以下错误。如何编写此登录夹具以使每次测试都不需要登录,并且所有测试都可以使用一次登录?

这是我收到的错误:

================================================================================================= ERRORS ==================================================================================================
___________________________________________________________________________ ERROR at setup of TestData.test_selected_version ____________________________________________________________________________
ScopeMismatch: You tried to access the 'function' scoped fixture 'mozwebqa' with a 'module' scoped request object, involved factories
conftest.py:6:  def login(mozwebqa, variables)
../../.virtualenvs/webqa/lib/python2.7/site-packages/pytest_mozwebqa/pytest_mozwebqa.py:159:  def pytest_funcarg__mozwebqa(request)

conftest.py的内容:

@pytest.fixture(scope='session')
def login(mozwebqa, variables):
    data_page = DataPage(mozwebqa)
    network_page = data_page.select_version(variables)
    return network_page

推荐答案

需要设置登录函数作用域,与mozwebqa fixture相同

这篇关于将会话范围的fixture与py.test的pytest-mozwebqa插件配合使用时的ScopeMismatch的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆