「专题」 PHP 应用程序测试实践指南

906 阅读2分钟

file

大家在思考如何将测试引入自己/团队的开发流程的整个生命周期的时候,这篇文章可作为知识索引。

Why TDD ?

GitChat 今天有一篇新鲜出炉的文章,可以去看一下 深度解读测试驱动开发(TDD),非广告。

个人比较关注的几个方面:

1)先写测试的好处

Give us proper hints about the problems

这是一个很好的时机,跟你的项目或产品经理将业务实现的逻辑细节梳理清楚。确保你在构建之前,就完全了解你要构建的应用究竟是如何运行的,彻底搞清楚你要解决的是什么问题非常重要。

当然也不是说需要你在写代码之前就写完所有的测试,写一小部分测试(在敏捷开发中,即一个 sprint),然后去实现相关的业务代码,并让他们通过测试,持续执行这个循环,直到完成所有规划的功能。

2)重构保障

TDD 的好处是覆盖完全的单元测试,对产品代码提供一个保护网,让我们可以轻松的迎接需求变化或改善代码的设计

3)测试会贯穿整个开发流程

测试并不是一个一次性的行为,测试需要被持续的修改和改进,就像应用程序本身。

测试工具 (或框架)

PHP 有一些不同种类的测试工具 (或框架) 可以使用,它们使用不同的方法或理念,但他们都试图避免手动测试和大型 QA 团队的需求,确保最近的变更不会破坏既有功能。

视频资源

参考资料

关于测试,大家有什么好的建议、实践或者推荐资源呢?