python测试服务器部署的应用程序

时间:2013-09-01 09:48:39

标签: python testing continuous-integration travis-ci continuous-testing

我有一个小应用程序(https://github.com/tkoomzaaskz/cherry-api),我想将它与travis集成。事实上,特拉维斯在这里可能并不重要。我的问题是如何配置构建/作业以执行以下序列:

  • 启动为应用程序提供服务的服务器
  • 运行测试
  • 关闭服务器(这意味着关闭构建)

应用程序是用python / CherryPy(基本webapp框架)编写的。在我的本地主机上,我使用两个控制台。一个运行服务器,另一个运行测试 - 它非常简单,工作正常。但是当我想在CI环境中执行所有这些时,我遇到了麻烦 - 在服务器启动后我无法获得控制权,因为服务器进程等待请求......并等待......等待.. 。并且测试永远不会运行(https://travis-ci.org/tkoomzaaskz/cherry-api/builds/10855029 - 这个构建是无限的)。另外,我不知道如何关闭服务器。这是我的.travis.yml

before_script: python src/hello.py
script: nosetests

src/hello.py启动内置的CherryPy服务器(侦听localhost:8080)。我知道我可以通过添加&before_script: python src/hello.py &将其移到后台但是我会在CI环境中找到进程ID并杀死进程,这似乎是非常非常脏的解决方案,我猜有比这更好的东西。

我很欣赏有关如何配置此内容的任何提示。


编辑:我在后台配置了这个脏运行,然后在this file中终止了该进程。构建passes now。不过,我认为这很难看......

0 个答案:

没有答案
相关问题