flake8/pylint在Tox测试环境中失败,引发调用

2024-04-16 22:34:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在学习如何为我的python项目进行tox测试。

我有(应该是)一个相当标准的tox初始化文件,如下所示:

[tox]
envlist=py27,flake8
...
[testenv:flake8]
deps=flake8
commands=flake8 library # 'library' is temp. name of project

一切看起来都很正常,所有测试都正常,甚至flake8的输出也通过了(下面的输出)。但是,tox会引发一个调用错误(对于使用pylint进行测试也是如此)

flake8 recreate: /Users/shostakovich/projects/project_templates/library/.tox/flake8
flake8 installdeps: flake8
flake8 inst: /Users/shostakovich/projects/project_templates/library/.tox/dist/library-0.1.0.zip
flake8 installed: flake8==2.4.1,library==0.1.0,mccabe==0.3,pep8==1.5.7,pyflakes==0.8.1,wheel==0.24.0
library/__main__.py:12:1: F401 'os' imported but unused
library/__main__.py:13:1: F401 're' imported but unused
...
ERROR: InvocationError: '/Users/shostakovich/projects/project_templates/library/.tox/flake8/bin/flake8 library'

我在MaxOSX 10.9.5上运行tox 2.0.2。如果我直接调用flake8或pylint(flake8的版本如上图所示),问题就会消失。


Tags: pyprojecttoxunusedflake8mainlibraryusers
1条回答
网友
1楼 · 发布于 2024-04-16 22:34:17

tox不会失败,它会成功的!

您的flake8源代码检查有结果,因此tox会失败退出,这就是您的测试结果。把发现和你的完成!

您可以将运行flake8配置为忽略在tox.ini中包含节的特定代码。从flake8 docs

[flake8]
ignore = E226,E302,E41

您可能对更多选项感兴趣,例如select = ...用于启用白名单的代码检查。

相关问题 更多 >