git - 有了 CI 服务器就一定要在本地跑测试吗?

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

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

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

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

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

最佳答案

Do people still run the tests locally even if they have a CI server?

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

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

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

关于git - 有了 CI 服务器就一定要在本地跑测试吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42307691/

相关文章:

git - 使用 'git grep' 在 git core 中查找字符串实例

javascript - Jasmine - 如何监视函数内的函数调用?

java - Hibernate乐观锁测试

android - 如何在 Android 测试用例中使用 jUnit 测试滑动/滑动事件

java - 断言文件已在 Junit (Java 6) 中创建

git - 了解 merge 摘要统计数据,需要澄清

bash - git log 的输出在通过管道传输到文件时丢失了——我错过了什么?

Git:如果文件大于预定义的大小,则发出警告

c# - Jon Skeet 的 "TimeMachine"异步单元测试框架是否需要 ManuallyPumpedSynchronizationContext?

asp.net-mvc - MVC 是否可以在模型中访问 HttpContext.Current.User 以及如何测试