【问题标题】:Behavioral testing with jMockit to check if function is called or not使用 jMockit 进行行为测试以检查函数是否被调用
【发布时间】:2015-08-13 05:10:23
【问题描述】:

我想检查函数是否被调用。我必须使用函数类型为void 的 jMockit 来完成。我也想知道如何对以void 作为返回类型的函数进行单元测试。

我想检查下面给出的代码。我该怎么做?所有这些功能都是假设,只是为了清楚地理解问题。

如何检查函数 logdata,processdata 是否被调用?以及如何为checkdata 函数编写testcases。 (我正在使用 TestNG 工具。)

public void checkdata(int a, int b) {
     logdata(a, b);
     int c = a * b;
     processdata(c);
}

【问题讨论】:

  • 模拟logdataprocessdata,为它们创建一个期望对象,运行测试,检查期望是否满足
  • logdata()processdata() 私有吗?
  • 您可以检查方法是否已在 newStrictExpectations 块中调用,并为每个方法使用属性“times=1”。如果您不关心结果,您也可以在验证块中执行此操作。如果方法是私有的,请在期望块中使用新的 MockUp 来模拟返回的结果,并使用“times”属性来指定方法是否已被调用。

标签: java junit testng jmockit jmock


【解决方案1】:

您可以检查方法是否已在 newStrictExpectations 块中调用,并为每个方法使用属性“times=1”。如果您不关心结果,您也可以在验证块中执行此操作。如果方法是私有的,则使用期望块中的新 MockUp 来模拟返回的结果,并使用“times”属性来指定方法是否已被调用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    相关资源
    最近更新 更多