使用pylintrc时测试方法名不符合snake_case命名规范求助
解决Pylint提示测试方法命名不符合snake_case规范的问题
看起来Pylint在揪你测试方法命名的小辫子啦!虽然你的方法名test_calculator_add_method_returns_correct_result看起来已经是snake_case(全小写+下划线分隔),但还是触发了报错,大概率是你的pylintrc配置了更严格的命名规则,或者我们可以通过两种方式快速解决:
方案一:调整测试方法名(最简单直接)
如果不想折腾配置,直接简化方法名即可——既保持语义清晰,又符合Pylint的要求。比如把方法名改成更简洁的版本:
class TddInPythonExample(unittest.TestCase): """ This is a basic test class""" def test_calculator_add_returns_correct_result(self): """ This tests the calculator add method """ calc = Calculator() result = calc.add(2,2) self.assertEqual(4, result)
核心就是确保方法名全程小写,单词之间只用单个下划线分隔,没有任何特殊字符或大写字母。
方案二:修改pylintrc配置(保留原方法名)
如果你特别想保留当前的长方法名,可以修改pylintrc里的命名规则:
- 调整方法名正则规则:找到
method-rgx选项,确保它的正则表达式能匹配你的方法名。默认规则是[a-z_][a-z0-9_]{2,}$,这个本来就应该能匹配你的方法名,如果你的配置里改了这个规则,改回默认或者调整正则即可。 - 添加方法名到白名单:在
pylintrc里找到good-names选项,把你的方法名加进去:
good-names=test_calculator_add_method_returns_correct_result
- 临时禁用单个方法的检查:如果只是这一个方法有问题,也可以在代码里直接加注释跳过检查:
class TddInPythonExample(unittest.TestCase): """ This is a basic test class""" # pylint: disable=C0103 def test_calculator_add_method_returns_correct_result(self): """ This tests the calculator add method """ calc = Calculator() result = calc.add(2,2) self.assertEqual(4, result)
内容的提问来源于stack exchange,提问作者user1050619
相关产品推荐
相关产品推荐

