我在Vim中为Python开发设置了Syntastic。到目前为止它一直很棒,但是当使用导入的pytest.fixture
方法编写测试时,我得到了一些虚假错误。对于上下文,我在Python中使用Flask。但是,请考虑以下test.py
示例:
from common_stuff import app, client
def test_some_flask_think(client):
# some test stuff
在common_stuff.py
:
@pytest.fixture
def client(app)
return app.test_client()
如果他们在同一个文件中 - 没有来自Syntastic的抱怨。但是,在一个单独的文件中 - 没有运气。每个实例中都列出了F811
错误。
之前很可能遇到过同样的事情。非常感谢这里的建议/指示。
谢谢!
答案 0 :(得分:0)
回答我自己的问题,并希望善待那些可能遇到同样问题的人......
Syntastic可以为Python使用各种链接。在我的系统上配置的默认值恰好是flake8
。我可以通过在Vim中激活Python缓冲区时运行:SyntasticInfo
来确定这一点。
上述错误的代码为F811
,Flake 8 error code docs中也记录了该代码。经过进一步的研究,这可能是bug in Flake8。但是,有一个更加惯用的pytest解决方案,请参阅以下SO post。可以在this post中找到conftest.py
的具体示例。简而言之,common_stuff.py
可以重命名为conftest.py
,删除导入,pytest将相应地引导必要的测试装置。