我一直在使用测试驱动开发在应用引擎上开发一个 python 应用程序。我编写的测试之一向本地服务器发出了 2 个 HTTP 请求(模拟应用程序的正常行为)。第一个请求生成一个数据库实体并返回我在服务器上分配给它的一些 ID,第二个请求将它获得的 ID 与其他数据一起发送以更新第一条记录。我的问题是,尝试在第二个请求上使用 --high_replication (模拟高复制数据存储)运行服务器,服务器无法在数据存储中找到 ID。(没有 --high_replication 它正在工作)。我找到了一种解决方法,在每个请求之间添加睡眠,但我确信有更好的方法。
任何信息或帮助将非常感谢。
为了提供更多信息,这是测试的一部分:
response = self.sendPing()
response = self.updatePing(response['response'])
self.assertEquals(response['response'], 'OK')
我为此找到的解决方法是:
response = self.sendPing()
time.sleep(1)
response = self.updatePing(response['response'])
self.assertEquals(response['response'], 'OK')
在请求之间睡 1 秒时,我得到了很好的结果
科德科德