2014-02-08 31 views
0

我的项目有两个应用程序:api(用于处理API端点)和api-content(用于处理文件上载),每个应用程序在不同的端口上侦听。有谁知道我可以如何运行我的测试用例启动两台服务器?例如,文件上传需要在api服务器上进行认证。我的测试用例从TestCase派生,并且已经实现了create_app,但是这似乎是专门用于仅使用一个应用进行测试的。启动两台服务器进行测试

回答

0

创建两个应用程序,每个端口一个:

apiapp.config['TESTING'] = True 
apitest = apiapp.test_client() 

apicontentapp.config['TESTING'] = True 
contenttest = apicontentapp.test_client() 

和使用这两个测试客户端,来访问应用程序。实际上并不需要运行服务器

请注意,这将远远超出单元测试,你是在整合或这里甚至功能测试的境界。

+0

我已经试过类似的东西,并运行'app1.run(主机= ...)''中,但create_app''create_app'不回(我认为这是试图等待'app1.run(..) '返回有没有办法旋'app2'了作为一个单独的进程/线程 – Kar

+0

为什么在所有运行它只需使用测试客户端。?你不要在这里需要实际组网中,除非你的观点希望联系其他服务器通过HTTP(在这种情况下,我会嘲笑交互) –

+0

啊!有趣的,我会那样做,谢谢。 – Kar