Swift
编程
Swift51.com
首页
社区
▼
资讯
问答
分享
建议
开源代码
Xcode下载
Swift教程
hot
登录
注册
当前位置:
首页
> 分享
欢迎加入QQ讨论群258996829
苹果6袋
6
麦子学院
自动化测试原因分析
发布时间:2016-07-06 20:52 回复:0 查看:3511 最后回复:2016-07-06 20:52
无论你是软件测试人员还是程序猿,
自动化测试学习
都是必要的,首先,你想想下面的场景:
你利用重构之术让代码更简洁, 可读性更好,更高效,修改完成后,你泡上一杯清茶,躺在你的人体工学座椅上还在沉浸在刚才的美好之中, 这时QA找到你,
QA:请问你刚才提交代码了吗,
答曰:是的
QA: 你修改的那部分功能跑不通了,你没有测试吗
答曰:是吗, 我看看
…..
子曰:一切没有自动化测试的代码重构都是耍流氓。如果你重构了代码,却破坏了基本的功能,纵使代码再漂亮,性能再高,又有何用?
自动化测试
那么如何保证重构不破坏既有的功能?答曰:测试。无论你是单元测试,功能测试,集成测试,还是哔哩哔哩测试,总之你需要尽一切可能去测试。重构有一个个「点」(细胞)的重构,所以你需要单元测试;也有一个个「切面」(器官)的重构,所以你需要功能测试;当「切面」的改动甚大(器官移植),还需要集成测试…相关的测试是否存在决定了你能否重构;而测试所花费的时间直接决定了你是否会进行重构,以及以一个什么样的频率进行重构。如果重构了十行代码,却需要花费一个小时进行运行一次单元测试,那么你要么不会去重构代码,要么你重构了不会去测试。
好的重构发生在构建系统的每时每刻,而非问题发生或者老板要求。如果重构之后测试立刻会告知你结果,你会更有信心进行更多的重构,使其成为你工作生活的一部分。
你也许会质疑:什么样的单元测试可能会需要一个小时来完成?答曰:手工测试。这是为什么先验条件不是「测试」,而是「自动化测试」。没有自动化测试(以下简称测试),谈重构纯属扯淡。如果要重构的环节测试覆盖率不好,先想法提高覆盖率。
TODO 测试驱动开发
在测试驱动开发(TDD)这本书也写到,如何利用测试驱动开发。
总结
子曰:读万卷书不如行万里路。行动起来吧, 用实践说话,实践是检验真理的唯一标准。如果根本没有测试例,请先做好这个基本功再谈重构。
原文来自:jason’s blog
取消引用
您还未登录,
请先登录
提 问
热门帖子
iDev 全平台开发者大会门票免费送!限量10张!
苹果Mac Pro垃圾桶 最低配的ME253CH
本人想买个苹果电脑搞开发,哪位大侠指点下
求助:failable initializer 'init(name:)' cannot override a non-failable initializer
为庆祝Swift发布1个月,雨燕社区正式上线。
在UITextFeild里输入数据,这个数据怎么做加减乘除?
Swift 高仿喜马拉雅FM
要成为自由职业者?先要学会苹果的Swift哦
关于嵌入式引用\()
用swift实现的调用系统相机,相册的DEMO
Swift 教程
最新帖子
swift_5.3可以更新了
swift如何实现左滑删除
IBM Swift Sandbox访问
Thread 18: Fatal error: 'try!' expression unexpectedly raised an error: Error
跟随手势滑动的ScrollableTextField
Swift5.0什么时候出
什么时候出5.0
PerfectTemplate 无法编译
WWDC19 苹果宣布全新 UI 框架 SwiftUI
水平滚动视图Carousel
Xcode 9.4下载