当您拥有CI服务器时,是否必须在本地运行测试?

时间:2017-02-17 21:27:49

标签: git unit-testing testing continuous-integration automated-tests

我有一个CI服务器,我想知道我是否还需要本地运行测试或者只是提交我的更改,然后将其推送到GitHub,然后运行测试在CI服务器上

我的笔记本电脑编译,运行程序的速度很慢。我还需要同时打开MySQL,NSQ,Redis ..来测试环境。

如果我决定在CI服务器上运行测试,事情会容易得多。但每次我更改代码时,我都必须提交/推送项目(甚至只是单个字符),所以我可以知道我是否破坏了项目。

即使他们有CI服务器,人们是否仍在本地运行测试?

2 个答案:

答案 0 :(得分:2)

  

即使他们有CI服务器,人们是否仍在本地运行测试?

是的,因为单位测试应该很快 还有其他工具在本地分析您的代码(例如SonarQube),以便检测不良做法。或Linters,直接集成到您的IDE。

在CI级别运行的测试更多是要仔细检查一切是否仍然正常,即使您是以新的工作空间开始,而不是您可能遇到“缓存”问题的本地开发环境(因为您从未删除过)你的工作区,以及一些旧的静态文件使测试通过)

另外,可以运行相同的静态代码分析并发布到SonarQube服务器,以跟踪代码问题趋势(与您自己的本地环境相反,您只能看到快照)< / p>

答案 1 :(得分:1)

这取决于很多因素。运行测试需要多长时间? CI服务器是否能够处理此请求。我经常看到人们没有足够的代理来处理所有请求。如果您使用Git并且测试不会花费太多时间,您可以创建新的Develop分支并提交对此分支的更改。启用CI服务器以运行此分支。如果测试结果可以接受,您可以将Develop分支合并到主分支。