单元测试中的模拟对象、桩对象与测试间谍:实践与思考
1. 多订阅者消息发送测试
在完成了向单个客户端发送消息的测试后,自然要测试向多个订阅者发送消息的功能。通过复制第一个测试方法 subscribedClientShouldReceiveMessage() 并进行修改,创建了第二个测试方法 allSubscribedClientsShouldRecieveMessages() 。不过,复制粘贴的方式存在风险,需要仔细检查测试是否按预期执行。
@Test
public class RaceResultsServiceFirstAndSecondTest {
public void subscribedClientShouldReceiveMessage() {
RaceResultsService raceResults = new RaceResultsService();
Client client = mock(Client.class);
Message message = mock(Message.class);
raceResults.addSubscriber(client);
raceResults.send(message);
verify(client).receive(message);
}
public void messageShouldBeSentToAllSubscribedClients() {
RaceResult
超级会员免费看
订阅专栏 解锁全文
190

被折叠的 条评论
为什么被折叠?



