0

我有课

class CommandRunner {
  String output;

  public int run(String command) {
    //runs command and sets output         
    return errCode;
  }

  public String getOutput() {
    return output;
  }
}

以上 CommandRunner 正在我的课堂上进行测试

CommandRunner runner;
runner.run("some command");
out = runner.getOutput();
//operates on out

runner.run("some command");
out = runner.getOutput();
//operates on out

runner.run("some command");
out = runner.getOutput();
//operates on out

如何模拟 CommandRunner 以根据 run() 方法的输入返回不同的输出?我将 Power Mock 与 Mockito 一起使用。

4

1 回答 1

1

您可以使用 Mockito 来执行此操作Answer,它是在调用 mock 上的方法时运行的一段代码。您可以编写一个Answer检查传递给该方法的参数,并在每种情况下返回不同的东西。查看http://docs.mockito.googlecode.com/hg/latest/org/mockito/stubbing/Answer.html了解如何执行此操作。

于 2013-08-07T09:42:48.410 回答