Lon*_*zak 1 java junit unit-testing easymock
我将代码中方法的返回值更改void为和Object.然后两次junit测试失败,说明expect(...).andReturn(...)缺失了.添加后,一个测试是固定的,另一个仍然抛出一个看起来有点奇怪的异常:
java.lang.IllegalStateException:matcher调用在期望之外使用
适用于一个但不适用于另一个的代码是:
expect(myMock.foo(1l,FooEnum.A)).andReturn(EasyMock.anyObject(String.class));
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
EasyMock.anyObject(String.class)是一个匹配器,它不是一个String,不能用作String匹配 - 匹配如下所示:
when(foo.bar(EasyMock.anyObject(String.class))).thenReturn("foo-bar")
Run Code Online (Sandbox Code Playgroud)
PS你应该new String()尽可能避免使用; 使用它总是更好"".
| 归档时间: |
|
| 查看次数: |
9599 次 |
| 最近记录: |