我们需要确保我们的web应用程序和移动客户端通信正常。
从服务器(带有rspec测试的Rails应用程序)到移动客户端(Ruby应用程序,有mspec测试框架)和移动客户端到服务器之间有双向通信。
因此,为了确保同步机制按预期工作,我们需要测试以下内容:
如何孤立地测试这个?
发布于 2011-05-04 09:23:39
至于所有的测试,不要为意外的情况做计划。从你知道的开始。意料之外的人很快就会发现它是丑陋的,足以告诉你你还应该测试什么。
如果你把它拆开,你所拥有的其实是很简单的测试。以下是我的做法:
public final static String SERVER_DATA = "Prepared data from the server";
@Test
public void testServerPreparesDataCorrectly() throws Exception {
... usual setup ...
String actual = server.handleRequest( CLIENT_REQUEST );
assertEquals( SERVER_DATA, actual );
}
public final static String CLIENT_REQUEST = "...";
@Test
public void testClientRequest() throws Exception {
... usual setup ...
String actual = client.getRequestData(...);
assertEquals( CLIENT_REQUEST, actual );
}
@Test
public void testClientResponseProcessing() throws Exception {
... usual setup ...
client.parseServerResponse( SERVER_DATA );
... verify client state ...
}诸若此类。其基本思想是将每个进程步骤的输入和输出放入一个常数中,然后运行实现每个预期输入的流程步骤的代码,并验证输出。其中大多数输出也是其他测试的输入。
如果发生了变化,您将相应地更新输入/输出。做测试。故障将告诉您必须更新哪些流程步骤。
https://stackoverflow.com/questions/5880926
复制相似问题