很抱歉,如果这太基础了,但是我没有看到我的客户端/服务器体系结构是如何模拟的,到目前为止,我还没有看到任何例子可以澄清我的困惑。
我有一个叫做Messenger的单例,它创建了到服务器的管道。我的“客户端”对象调用Messenger方法sendToServer,并带有参数的消息字符串。
Messenger还从服务器接收字符串,然后使用与客户端消息无关但响应它的字符串调用“客户端”方法receiveFromServer。
模拟对sendToServer的调用没有问题。它是无效的,没有返回值。但是,在现实生活中发生的事情是,一旦我发送了该消息,我希望Messenger随后会将不同的字符串发送回客户端。
这不是返回值,因此您不能使用.thenReturn(“来自服务器的msg”)
我看不到如何模仿这种行为。您如何做
@模拟 Messenger mMockMessenger;
何时(mMockMessenger.sendToServer(“向服务器发送的消息”)。thenCall(client.recieve(“从服务器发送的消息”));