Python Unittest:确保调用补丁类

时间:2018-03-23 18:44:09

标签: python unit-testing ddt

我有以下代码

@ddt
@patch('mymodule.myclass', MagicMock)
class MyTest(): 
    @data([val1, val2])
    @unpack 
    def test_run(self, val1, val2):
         ClassA().run(val1, val2)  

如何在mymodule.myclass内声明某些方法?

1 个答案:

答案 0 :(得分:1)

当你在类级别修补它时,你会在测试方法中获得对mock作为参数的引用,例如:

@ddt
@patch('mymodule.myclass', MagicMock)
class MyTest(): 
    @data([val1, val2])
    @unpack 
    def test_run(self, val1, val2, my_class_mock):
         # use my_class_mock   

您可以将此模拟用于多种用途,但在这种情况下,您仍然需要在测试方法中修补您的类以进行断言。