有没有一种简单的方法来模拟python / Django中的许多静态方法?

时间:2017-08-27 14:41:51

标签: python django unit-testing

我来自Ruby / Rspec世界,模拟和设置tests / expected()语句来测试静态方法非常简单。

我想知道是否有一种简单的方法可以在Python中测试相同的东西。请忽略代码实际上在做什么(我在其中更改了许多名称)我有以下代码:

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等。

1 个答案:

答案 0 :(得分:1)

您可能需要查看python unittest module。它有模拟和修补模块