gpt4 book ai didi

unit-testing - 应该在 CI 服务器上运行什么样的测试?

转载 作者:行者123 更新时间:2023-12-01 08:00:55 25 4
gpt4 key购买 nike

目前,我们的单元测试与应用程序代码一起提交,并在每次提交时由构建机器人作业执行。同样,计算代码覆盖率。但是,开发人员在向存储库提交新功能之前——或者可以——执行 UT 和覆盖,因此 CI 过程似乎没有增加任何值(value)。

您建议应该在 CI 服务器上执行哪种测试,而开发人员在提交之前不会执行这些测试?

最佳答案

so the CI process does not seem to add any value

没有?

  • 如果开发人员在提交之前不运行测试会怎样?
  • 如果开发人员提交的更改与另一开发人员提交的更改相冲突怎么办?
  • 如果测试在开发人员的机器上通过但在其他机器上未通过,会发生什么情况?
  • 如果其他开发人员更改了测试会怎样?
  • ...

CI 不是“持续测试”,而是“持续集成”。需要将测试作为集成构建的一部分来运行,以验证提交的更改是否可以成功地集成 与已经存在的内容。开发人员本地可能未集成的工作站上的测试是否通过并不重要。

单元测试(任何相当快的自动化测试,真的)应该由 CI 服务器执行以验证构建的当前状态。该状态可能与单个开发人员工作站上的状态不同。

它们可能是开发人员刚才运行的相同测试。但是测试运行的上下文在物理上是不同的,运行它们的需求在语义上也是不同的。除非您按时钟周期收费,否则没有理由忽略运行测试。

关于unit-testing - 应该在 CI 服务器上运行什么样的测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26164125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com