Py学习  »  Python

python unittest框架是否会在每个测试方法之前执行重载设置(self,另一个param)?

JQueue • 6 年前 • 1658 次点击  

如果我 超载 (不重写)setup方法,它是否仍将在每个测试方法之前执行?

如果不是,是否影响setup()的执行(非重载版本)?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/47630
文章 [ 1 ]  |  最新文章 6 年前
DeepSpace
Reply   •   1 楼
DeepSpace    7 年前

python不支持方法重载。实际方法将是最后定义的方法。

class A:
    def foo(self, arg_one): pass

    def foo(self, arg_one, arg_two): pass

A().foo('')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: foo() missing 1 required positional argument: 'arg_two'

这主要是因为python是动态类型语言。如果要(以某种方式)支持重载,则重载规则将过于复杂。