在类方法中使用self.method_name

时间:2016-07-13 20:48:12

标签: python python-3.x django-unittest

我是 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)))

1 个答案:

答案 0 :(得分:0)

正如documentation for unittest中所述,assertEqualTestCase类提供的方法。

通常,当访问方法时(通过self.<method_name>),然后使用该MRO或该特定类的方法解析顺序搜索基类。