毒素和Travis-CI有什么关系和区别?

时间:2019-06-12 03:47:40

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

我对toxTravis-CI之间的概念关系/差异和使用场景感到困惑。

我看到Python项目正在分别使用toxTravis-CI针对不同的Python环境进行测试。因此,似乎这两个CI服务可以是彼此的替代

但是我也读到我们可以run tox with Travis-CI。看来这两个CI服务是相互补充

所以我想知道为什么如果我们已经有毒药(或者反之),为什么我们仍然需要Travis-CI?希望有人可以澄清或指出一些有关这两者之间的概念关系和/或差异和使用方案的资源吗?预先感谢!

1 个答案:

答案 0 :(得分:1)

tox和Travis CI是两个完全不同且独立的事物。

tox是用于运行测试的程序。对于每次测试运行,它都会创建一个单独的虚拟环境。 tox不是服务,而是程序。您可以在本地运行tox,因为它不使用任何外部资源。但是您也可以在Travis CI上运行tox

Travis CI是一项商业性的服务(具有免费层),可以在使用Linux,MacOS和Windows操作系统的虚拟机上运行测试。

您可以在不使用Travis的情况下在本地运行tox,可以在不使用tox的情况下在Travis CI上运行测试,可以在Travis CI的情况下使用tox进行测试。

PS。您甚至可以在没有tox且没有Travis的情况下运行测试,但这是最不有趣的部分。 ;-)