Django测试:对Travis CI进行单独的单元和集成测试

时间:2014-09-04 07:32:47

标签: python django unit-testing integration-testing travis-ci

我有一个Django项目,已经使用标准的Django测试框架进行了一些单元测试。这很好用。现在我想与Travis CI建立集成测试,但是我遇到了几个阻止者:

  1. Django docs并未说明如何将自包含的./manage.py test单元测试与集成测试分开,这需要设置外部服务。我想只在我的开发机器和Travis CI上运行单元测试来运行单元测试和集成测试。我该如何分开这些?
  2. 我在Travis CI上有数据库,在设置过程中填充了一些初始数据。我希望集成测试能够与之一起运行,但是单元测试要继续使用临时的仅测试数据库。我该怎么做?

1 个答案:

答案 0 :(得分:1)

1-您可以从manage.py test命令运行所需的任何测试。因此,您可以创建文件unit_test.py并仅运行此文件中的测试。

manage.py test --help

2-你不想这样做。针对生产/半生产数据库运行测试是一种耻辱。您需要为每个测试创建fixture,并针对临时数据库运行测试。 如果您真的想知道答案,则已经回答here