【问题标题】:difference between times(1) and atMostOnce() in mockitomockito 中 times(1) 和 atMostOnce() 之间的区别
【发布时间】:2023-02-01 20:44:23
【问题描述】:

Mockito验证方法中times(1)atMostOnce()有什么区别? 因为两者都会导致相同的行为,那么它们之间有什么区别? 他们的内部工作有什么不同吗?

verify(calculatorService, times(1)).add(10.0, 20.0);
verify(calculatorService, atMost(1)).add(10.0, 20.0);

【问题讨论】:

    标签: java mockito


    【解决方案1】:

    这是==<=之间的区别:

    • times(1) 必须恰好发生一次。
    • atMost(1) 可能发生零次或一次。

    【讨论】:

      【解决方案2】:

      据我回忆,应该是这样的:

      • times(1) -> 将断言您的代码恰好调用了一次模拟方法
      • atMost(1) -> 断言您的代码没有调用多个方法 - 请注意,即使您不调用方法 (0),断言也应该通过。

      【讨论】:

        猜你喜欢
        • 2012-11-20
        • 2021-05-05
        • 1970-01-01
        • 2022-10-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-01
        • 2018-05-05
        • 1970-01-01
        相关资源
        最近更新 更多