我是 Python 中 OOP 的新手。我是第一次使用unittest
包。在下面的代码中,来自Python官方文档,当我们使用self.assertEqual
时,我们是否从基类assertEqual
调用unittest.Testcase
方法?
通常,每当我们在类的另一个方法定义中调用self.method_name
时,它是否从基类调用该方法(假设没有为派生类定义method_name
)?
import random
import unittest
class TestSequenceFunctions(unittest.TestCase):
def setUp(self):
self.seq = list(range(10))
def test_shuffle(self):
# make sure the shuffled sequence does not lose any elements
random.shuffle(self.seq)
self.seq.sort()
self.assertEqual(self.seq, list(range(10)))
答案 0 :(得分:0)
正如documentation for unittest
中所述,assertEqual
是TestCase
类提供的方法。
通常,当访问方法时(通过self.<method_name>
),然后使用该MRO
或该特定类的方法解析顺序搜索基类。