2015-03-02 34 views

回答

2

知名度早晚的事情... bla1只能在MyTest宣布试验方法一起使用。

+0

bla1是公开的,为什么只能在MyTest中使用? bla0的范围是什么?对于全局可见性,我必须将夹具置于conftest.py(http://pytest.org/latest/fixture.html#shifting-visibility-of-fixture-functions),还是不? – user1456435 2015-03-02 21:31:52

+0

'bla1'isn't public - 它是一个类方法,因此它只能在类MyTest中使用。 'bla0'是一个全局方法 - 它可以在文件范围内使用。如果你想在许多测试文件中使用你的灯具,你应该把它作为全局函数(灯具)放在'conftest.py'文件中。 – mpiskore 2015-12-30 15:24:13

1

区别在于函数和类方法之间的区别。第一个可以在文件范围内使用,而另一个在范围内使用。

你可能要找的是conftest.py文件,它允许您定义,在所有的测试文件都可用项目内(即金字塔的应用程序)灯具。它应该是这样的:现在

@pytest.fixture(scope='session', autouse=True) def method(): return 'foobar'

,该夹具可以在你的项目中的所有测试类由conftest.py文件覆盖的范围内使用。