[专题] PHP 应用程序测试实践指南

分享 JobsLong ⋅ 于 2017-03-13 22:09:04 ⋅ 最后回复由 troubleman 2017-03-15 11:38:20 ⋅ 1292 阅读

file

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

Why TDD ?

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

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

1)先写测试的好处

Give us proper hints about the problems

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

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

2)重构保障

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

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

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

测试工具 (或框架)

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

视频资源

参考资料

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

优帆远扬 正在招聘 全职伙伴Remote 工程师


加入 「初学者」小密圈

本帖已被设为精华帖!
本帖由 Summer 于 2个月前 加精
回复数量: 3
  • Destiny 将来的你一定会感谢现在努力的自己!
    2017-03-13 22:57:31

    赞 沙发

  • cys
    2017-03-14 09:07:11

    一直想在代码中加入测试,遇到具体业务却不知道该如何下手。

  • troubleman
    2017-03-15 11:38:20

    干货满满:+1:

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter