测试软件很重要。 自动化测试并在适当位置进行持续集成是当今的最佳实践。 通常,这是软件团队在开始新项目时首先要进行的工作之一。
良好的测试套件可让您以安全的方式对产品进行更改,而不会给客户带来麻烦。 它还可以帮助您验证功能的功能。 但是您的测试套件也需要大量时间和维护。 许多团队希望有适当的测试,但实际上并未进行测试。
有一个论点是大型测试套件会减慢您的部署速度,而运行测试套件只会花费太长时间。 但是,如今,我们有很多服务可帮助您自动运行测试。
我和我的联合创始人开始从事Codeship的主要原因之一是减轻了在自己的计算机上运行测试的负担。 我们还希望帮助您进行自动化,过程控制,并移除开发机器以阻止您进行更改。 因此,现在我们可以为您提供专用于速度的专用基础架构,但仍可提供灵活性。 最重要的是,它不需要您个人计算机的资源。
开发团队跳过测试的原因
您应该真正测试软件
是的,我们都有很多工作要做,编写/改进测试或重构您的代码可能并不是真正在您的高优先级任务列表上。 维护测试套件可能并不是现在最重要的事情-您需要处理团队路线图上的所有这些功能,而且截止日期越来越危险。 很少有测试需要您立即关注。
但是确实应该。 在没有足够的测试覆盖范围的情况下依靠连续集成或连续交付并不是一个好主意。 您必须有一个安全网,该安全网可以阻止将破坏代码的更改推送给客户。
与Docker的持续集成和交付
今天,高效的软件团队每天多次将代码推送到生产环境中。 但这仅在具有良好流程的情况下有效。 拉动请求,代码审查和良好的测试覆盖范围对于确保新代码的快速发展和高产出至关重要。 您可以在我的免费电子书“开发工作流程的效率”中阅读有关此内容的更多信息。
确保开发和生产环境彼此尽可能相似对于软件团队来说往往是压倒性的目标。 过去很难在测试环境和生产环境中拥有相同的条件。
今天,Docker允许您在容器中运行测试,以及在开发和部署中隔离测试。 结合我们的Codeship Jet CI平台 ,您现在可以通过一种简单的方法,通过实现测试环境与生产之间的均等性,在多个平台上进行可预测的测试。 这使您有信心,当机器上的某些东西可以工作时,它也将为您的客户服务。
正如Codeship高级工程师Laura Frank和我将在我们即将举行的网络研讨会中演示的那样,使用Docker进行测试是朝着提高团队效率和输出水平迈出的一大步。 所有软件团队,无论哪个团队规模或公司规模,都将很可能受益于适当的工作流程。
尽管许多人将Docker容器视为类似于虚拟机的东西,但您确实应该将它们更多地视为进程。 这种观点突然为如何使用容器开辟了更多的创造性思维。 当Jessie Frazelle在DockerCon 2015上发表讲话时,她展示了几个“ Docker中的容器黑客”的例子,展示了您可以发挥多大的创造力,以及可以在Docker容器方面突破多少。
3月29日在我们的免费网络研讨会中使用Docker Live教程进行测试
如果您有兴趣学习如何利用Docker进行测试,我强烈建议您参加 2016年3月29日星期二的免费网络研讨会 。Codeship的高级工程师Laura Frank,我将谈论编写代码的重要性测试,并提供有关如何使用Docker运行测试以及如何并行化测试的详细示例。
翻译自: https://www.javacodegeeks.com/2016/03/docker-makes-testing-efficient.html