测试和持续集成

时间:2020-02-22 16:13:50

标签: reactjs testing continuous-integration

我是React的新手,也正在学习测试以及持续集成及其重要性。您知道,我已经阅读了很多有关测试和CI的文章,其中大多数都说“两者都很重要” :),但确实希望您确认我的理解是否正确。因此,首先,关于测试,我们是否确实在软件开发中编写测试以确保我们对应用程序保持控制,也就是说,如果我们向该应用程序添加新功能,那么我们将运行测试以确保我们是否破坏了某些东西。再次,我们对应用程序进行更改,然后运行测试以确保我们是否刹车了?其次,关于持续集成,是否确实需要CI以便我们不必手动运行测试,也就是说,我们不需要键入npm run tests,否则我们会在推送到github之前忘记运行测试,因此CI可以为github运行测试我们?

1 个答案:

答案 0 :(得分:2)

  • 本地测试和在CI中运行测试正在实现实现最高质量的相同目标。 您应该始终在本地运行测试(您不想提交损坏的代码),有些人甚至会提倡您养成习惯,即始终使用任何可能的方式来帮助您仅提交工作代码。我建议例如阅读https://en.wikipedia.org/wiki/Software_craftsmanship
  • 关于CI,假设您正在维护测试套件,并且指示CI服务器根据您的代码运行它们,那么CI服务器当然应该足以防止无法正常工作的代码进入生产环境。 但是,仅依靠CI服务器来运行测试套件将是真正的时间和资源浪费,这也是一个非常不好的习惯,因为这意味着您不知道在提交代码之前是否可以正常工作意味着您已经准备好承担质量风险。

尽可能只提交有效的代码。在团队合作中,这一点尤其重要。 因此,您应该始终在不依赖外部服务器的情况下验证工作质量。