我有一个带有静态方法的实用程序类,如下所示:
public class Utils
{
public static String DoSomething(String input)
{
String result = null;
// code does something and puts a value in the result string
return result;
}
}
在一个测试用例中,我按如下方式模拟该类:
PowerMockito.mockStatic(Utils.class);
when(Utils.doSomething(Mockito.anyString())).thenReturn("SUCCESS");
不幸的是,我需要方法为其中一项测试返回不同的值。我在测试中添加了这一行:
when(Utils.doSomething(Mockito.anyString())).thenReturn("FAILURE");
但是当我尝试运行此命令时,它将覆盖所有其他测试的方法返回。
更改参数匹配器没有帮助,因为测试之间的参数相同。
我是否可以告诉PowerMock让该方法为除一个测试之外的所有测试返回相同的值?