我正在使用pytest-mozwebqa插件运行一些 Selenium 测试。对于所有测试,我只想登录一次该应用程序,因此我尝试在conftest.py中使用 session 作用域的夹具,但是遇到了以下错误。如何编写此登录装置,以便每个测试都不需要登录,并且所有测试都可以使用单个登录?

这是我得到的错误:

================================================================================================= 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固定装置相同

关于python - ScopeMismatch与pytest-mozwebqa插件一起用于py.test的 session 作用域夹具,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31500480/

10-10 06:53