如何为单元测试禁用Flake8的D103公共函数缺失文档字符串检查
针对测试文件禁用Flake8 D103检查的配置方法
D103是flake8-docstrings(底层依赖pydocstyle)抛出的公共函数缺少文档字符串报错,别直接全局忽略D103,不然业务代码的相关检查也会失效,用以下方案可以精准对测试文件关闭该项检查:
按文件路径批量忽略(最常用)
打开项目根目录的Flake8配置文件(支持.flake8、setup.cfg、tox.ini三种格式),找到[flake8]配置段,添加per-file-ignores规则匹配测试目录:[flake8] per-file-ignores = test/*: D103 tests/*: D103你的测试文件都存在
test/目录下,上面的规则覆盖了常见的test、tests两种测试目录命名,配置完重跑flake8,贴出的那些test路径下的D103报错会全部清除,非测试路径的D103检查正常运行。如果还有其他测试目录比如integration_tests/,按相同格式追加规则就行。单文件单独忽略
如果只有个别测试文件需要关闭这项检查,不用做全局配置,直接在对应文件最顶部加一行注释:# flake8: noqa: D103这个配置只对当前文件生效,会跳过当前文件所有D103检查。
别踩坑:不要把D103直接写到
extend-ignore或者ignore全局配置项里,这么做会关掉全项目所有位置的D103检查,业务代码里公共函数缺docstring的问题也查不出来了。
内容的提问来源于stack exchange,提问作者Jorrick Sleijster
相关产品推荐
相关产品推荐

