mock是在测试过程中,对于一些不容易构造/获取的对象,创建一个mock对象来模拟对象的行为。
下面是mock的实例:
第一步:找出需要mock的对象,此实例中为self.test.add
第二步:self.test.add = mock.Mock(return_value=3)
import mockimport unittestclass Test(unittest.TestCase): def add(self, a, b): return a+bclass TestMock(unittest.TestCase): def setUp(self): self.test = Test() def tearDown(self): pass def test_add(self): self.test.add = mock.Mock(return_value=3) self.assertEqual(self.test.add(4,2),3)if __name__ == "__main__": test_suite = unittest.TestSuite() test_suite.addTests(unittest.TestLoader().loadTestsFromTestCase(TestMock)) with open("TestReportMock.txt", "a") as f: runner = unittest.TextTestRunner(stream=f, verbosity=3) runner.run(test_suite) # unittest.main(verbosity=2)测试结果: