在JMockit中,如何指定一系列调用的时间?

Noe*_*Yap 2 jmockit

我有类似的东西:

new Expectations() {{
    mock0.f();
    mock1.f();

    mock0.f();
    mock1.f();

    mock0.f();
    mock1.f();
}};
Run Code Online (Sandbox Code Playgroud)

有没有办法可以使用'times ='规范?就像是:

new Expectations() {{
    {
        mock0.f();
        mock1.f();
    }
    times = 3;
}};
Run Code Online (Sandbox Code Playgroud)

我/我可以/在我的期望中有一个循环,但我真的很讨厌在我的单元测试中大于一的圈复杂度.

请注意,我希望继续使用严格的期望.

Rog*_*rio 6

您可以使用ExpectationsnumberOfIterations参数的构造函数:

new Expectations(3) {{
    {
        mock0.f();
        mock1.f();
    }
}};
Run Code Online (Sandbox Code Playgroud)

NonStrictExpectations并且Verifications也支持它.