Pylint 抱怨在另一个文件中设置的实例成员
Pylint complains about the member of an instance that is set in another file
对于我的测试,我在 init.py 文件中创建了一个方法,我将其包含在很多测试中。除了 pylint 似乎有效之外,它还表明测试实例 class 没有会员楼层。
init.py
def create_floor(self):
self.floor = Floor.objects.create(level=0)
...
test_something.py
def setUp(self):
create_floor(self)
self.building = Building.objects.create(floor=self.floor)
...
在我看来,你有一个有效的 pylint 违规行为。执行此操作的正常方法是在基 class 中定义它并继承。
如果你只想关闭 pylint,你必须:
- 添加相关的 ignore/disable 评论
- 自定义您的 pylint.rc 文件
- 初始化
self.floor = None
或者测试中的东西class__init__
1 使您的代码乱七八糟。 2 可以通过抑制该类型的所有警告来隐藏其他问题。 3 与您首先尝试通过这样做来避免的代码重复完全相同。
我的建议是仅以正确的 OO 方式进行操作并使用继承。
对于我的测试,我在 init.py 文件中创建了一个方法,我将其包含在很多测试中。除了 pylint 似乎有效之外,它还表明测试实例 class 没有会员楼层。
init.py
def create_floor(self):
self.floor = Floor.objects.create(level=0)
...
test_something.py
def setUp(self):
create_floor(self)
self.building = Building.objects.create(floor=self.floor)
...
在我看来,你有一个有效的 pylint 违规行为。执行此操作的正常方法是在基 class 中定义它并继承。
如果你只想关闭 pylint,你必须:
- 添加相关的 ignore/disable 评论
- 自定义您的 pylint.rc 文件
- 初始化
self.floor = None
或者测试中的东西class__init__
1 使您的代码乱七八糟。 2 可以通过抑制该类型的所有警告来隐藏其他问题。 3 与您首先尝试通过这样做来避免的代码重复完全相同。
我的建议是仅以正确的 OO 方式进行操作并使用继承。