在python/Django中有没有一种简单的方法来模拟许多静态方法?
我来自Ruby/Rspec世界,在那里模拟和设置tests/expects()语句来测试静态方法非常简单 我想知道是否有一种简单的方法可以在Python中测试相同的东西。请忽略代码实际在做什么(我在其中更改了许多名称),我有以下代码:在python/Django中有没有一种简单的方法来模拟许多静态方法?,python,django,unit-testing,Python,Django,Unit Testing,我来自Ruby/Rspec世界,在那里模拟和设置tests/expects()语句来测试静态方法非常简单 我想知道是否有一种简单的方法可以在Python中测试相同的东西。请忽略代码实际在做什么(我在其中更改了许多名称),我有以下代码: def create_models(pr_dict): facility = FacilityCreator.doit(pr_dict) p = PCreator.doit(facility, pr_dict) pr = PRCreat
def create_models(pr_dict):
facility = FacilityCreator.doit(pr_dict)
p = PCreator.doit(facility, pr_dict)
pr = PRCreator.doit(p, p.recent, pr_dict)
models_affected = {'f': f,
'pr': pr,}
return models_affected
我已经研究了unittest和unittest.mock,但如果我的方法中有许多静态方法,那么它似乎不是一个有说服力的解决方案。换句话说,我将在一个@patch中做一个@patch,等等。您可能想看看python。它有模拟和修补模块谢谢。我已经做了,但是也看了mock。它没有清楚地回答我的“静态方法”问题。你可以创建一个“模拟类”,其中包含你想要模拟的方法,并对整个类进行修补,以避免嵌套的修补声明