我正在尝试为通话创建模拟.假设我有这个方法,我正在尝试存根:
I am trying to create a mock for a call. Say I have this method I am trying to stub out:
class ClassA {
public String getString(String a) {
return a + "hey";
}
}
我想模拟的是:第一个实例是
What I am trying to mock out is: 1st instance is
when(classA.getString(eq("a")).thenReturn(...);`
在同一个测试用例中
when(classA.getString([anything that is not a])).thenReturn(somethingelse);
第二种情况是我的问题:我如何匹配 anyString() 而不是 "a"?
The 2nd case is my question: How do I match anyString() other than "a"?
有了 Mockito 框架,你可以使用 AdditionalMatchers
With Mockito framework, you can use AdditionalMatchers
ClassA classA = Mockito.mock(ClassA.class);
Mockito.when(classA.getString(Matchers.eq("a"))).thenReturn("something");
Mockito.when(classA.getString(AdditionalMatchers.not(Matchers.eq("a")))).thenReturn("something else");
希望对你有帮助.
这篇关于如何编写不等于某物的匹配器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
如何检测 32 位 int 上的整数溢出?How can I detect integer overflow on 32 bits int?(如何检测 32 位 int 上的整数溢出?)
return 语句之前的局部变量,这有关系吗?Local variables before return statements, does it matter?(return 语句之前的局部变量,这有关系吗?)
如何将整数转换为整数?How to convert Integer to int?(如何将整数转换为整数?)
如何在给定范围内创建一个随机打乱数字的 intHow do I create an int array with randomly shuffled numbers in a given range(如何在给定范围内创建一个随机打乱数字的 int 数组)
java的行为不一致==Inconsistent behavior on java#39;s ==(java的行为不一致==)
为什么 Java 能够将 0xff000000 存储为 int?Why is Java able to store 0xff000000 as an int?(为什么 Java 能够将 0xff000000 存储为 int?)