【发布时间】:2011-03-13 06:34:10
【问题描述】:
我正在尝试模拟以下调用:
s.socket().bind(new InetSocketAddress(serverIPAddress_, serverPort_), 0);
这样我就可以在以可预测的方式失败时测试其余代码的作用。我在我的测试用例中使用它:
ServerSocketChannel ssc = mock(ServerSocketChannel.class);
when(ServerSocketChannel.open()).thenReturn(ssc);
doNothing().when(ssc.socket().bind(any(), anyInt()));
但是,上面的代码不能编译:
[javac] /home/yann/projects/flexnbd/src/uk/co/bytemark/flexnbd/FlexNBDTest.java:147: cannot find symbol
[javac] symbol : method bind(java.lang.Object,int)
[javac] location: class java.net.ServerSocket
[javac] doNothing().when(ssc.socket().bind(any(), anyInt()));
[javac] ^
[javac] 1 error
知道我做错了什么吗?
【问题讨论】:
-
哇,这获得了 1003 次观看,没有赞成票或反对票...难道没有徽章吗?
标签: java sockets mocking mockito