Python 将备用flake8规则应用于文件子集
我有一个项目,我使用tox进行测试,它运行8个测试。我想对我的tests目录应用不同于其他目录的flake8配置;我希望在测试中忽略E402,因为在导入要测试的模块之前,我正在处理Python 将备用flake8规则应用于文件子集,python,tox,flake8,Python,Tox,Flake8,我有一个项目,我使用tox进行测试,它运行8个测试。我想对我的tests目录应用不同于其他目录的flake8配置;我希望在测试中忽略E402,因为在导入要测试的模块之前,我正在处理sys.path flake8配置语法只允许将一个配置应用于包含/排除匹配的文件,因此我添加了/tests/.flake8,以添加仅应用于这些文件的配置 /tox.ini [tox] envlist = lint, py27, py36 [testenv] commands = coverage run --
sys.path
flake8配置语法只允许将一个配置应用于包含/排除匹配的文件,因此我添加了/tests/.flake8
,以添加仅应用于这些文件的配置
/tox.ini
[tox]
envlist = lint, py27, py36
[testenv]
commands =
coverage run --source=myModule -a setup.py test
[testenv:lint]
basepython = python3
ignore_errors = True
deps =
-r{toxinidir}/requirements_test.txt
commands =
flake8
pylint myModule
pydocstyle myModule tests
[flake8]
count = true
statistics = True
/tests/.flake 8
[flake8]
ignore = E402
对于mytox.ini
文件中的flake8选项,dotfile总是被忽略。在tox.ini
文件中没有选项的情况下,flake8从命令行运行时使用该点文件,但在tox运行时忽略该点文件
似乎无法将不同的flake8配置应用于同一项目下的不同文件集。我是否在配置语法中遗漏了一些可以让我在这里做我想做的事情的东西?您可以尝试运行
flake8
两次-一次使用不包括tests/
的全局配置,第二次在tests/
中运行:
commands =
flake8 --exclude=tests
cd tests && flake8
从3.7.0版开始,flake8将显示一个执行所需操作的标志:
每个文件忽略
。要在配置文件中使用它,请执行以下操作:
[flake8]
per-file-ignores =
tests/*: E402
也可以在命令行上应用它,方法是在flake8
调用中添加如下标志:
--per-file-ignores=tests/*.py:E402
点文件由从命令行运行的flake8使用。如何运行
flake8
?您是否通过tox中的lint环境执行cd测试。不,不是cd刻录到测试中。。从项目的根开始。我们的想法是删除项目中的所有文件,但将稍微不同的规则应用于测试
,而不是实际的解决方案