Django/Travis CI - 配置 .travis YAML 文件以首先启动本地主机服务器,然后 运行 我的测试没有挂起?

Django/Travis CI - configuring a .travis YAML file to first start a localhost server, then run my tests without hanging?

我开始为我的(第一个)Django 项目之一设置一个 CI 环境。我在使用 travis 时遇到了麻烦;当我在本地测试我的代码时,我首先必须 运行 'manage.py runserver' 来启动我的服务器;然后我可以 运行 我的单元测试 'manage.py tests.' 所以在我的 .travis.yml 文件中,我让它先启动服务器,然后 运行 单元测试,然后 运行 集成测试(在 self-made python 脚本)。我的主要问题是这会导致 travis 挂起:它启动服务器然后等待输入。这是预期的;我一整天都在仔细研究的文档说,如果超过十分钟没有收到任何输出,它将导致构建出错。我将如何设置我的 .travis 文件以启动本地主机服务器,然后将其保留 运行ning 并继续进行集成测试?单元测试很好,我可以 运行 它们当然不需要启动服务器,但我需要服务器 运行 通过我的集成测试;到目前为止,我编写的唯一测试以断言开始,以检查 'Django' 是否是页面标题。当然,如果没有服务器,这将失败。 任何帮助将不胜感激..我知道代码在技术上很好,因为整个问题是由于我无法正确配置 .travis.yml 文件,因此不让 travis 运行 我自己测试一个本地主机的实例,但在搜索了几个小时并收到我的第五或第六封关于我的开发分支上构建失败的电子邮件后,我感到很恼火。 特拉维斯档案: http://pastebin.com/U0GpnF5y

我太傻了,在连续两天争取 almost 之后,我想通了。非常简单的答案,我觉得很愚蠢,但我会在这里 post 它以防万一其他人只用 linux shell 做一些简单的事情而偶然发现它。
我在 python manage.py 运行 服务器行的末尾附加了一个符号(我假设这告诉 os 到 运行这是一个单独的工作,或者 运行 它并继续下一个任务)并将其保存在 before_script 部分。所以 .yml 文件的结尾看起来像:

before_script:
  python manage.py runserver &

script:
  coverage run manage.py tests
  coverage run functional_tests.py

after_script:
  coveralls