为什么程序员一定要写测试?

为什么写测试

写测试主要三个意义:

降低Bug,节约时间

很多Bug都是一些小错误,小细节,不是啥高大上的设计,有了测试可以规避一些基础的问题,避免到了上线才发现,那个时候再来重新修改,发布浪费很多时间。

理解需求,挖掘边界条件

你要测试一个代码,会重新审视代码逻辑,更容易找到里面的边界条件,对需求理解更加透彻清晰,另外测试代码本身就是一个很好的文档,而不像普通的文档会随着代码变更是似而非的。新来的小伙伴我一般会让他们去写测试,看测试代码,不是文档更似文档。

增加信心,更好重构

我不知道其他人有这个感受没,反正要我去动没有测试的老代码我是心理有点发虚的。有了测试用例,我们改动代码会更有自信,而不用过于担心改动到多年的老Bug,导致引发严重问题。

有了测试才能更好把多方代码进行集成起来,如果没有要把多个成员的代码合并一起这个势必会非常困难,最终的软件质量也会很低,其实和第一个意义一样。

没有银弹

说完上面的内容之后,很多同学感觉测试真的太好了,所有的代码我都要写测试,让测试覆盖率足够高,这样就能降低Bug,节约时间,快速做一个高质量软件。

但是实际上测试本身是需要维护的,加上写的过程这也是一个耗时过程,尤其是我们的项目可能还只是试错的demo,一开始投入大量精力写测试也是得不偿失的,所以测试也不是越多越好,是一个权衡的结果。

所以软件开发常说没有银弹。

银弹是什么? 维基百科这样说:

在民俗传说里,所有能让我们充满梦靥的怪物之中,没有比狼人更可怕的了,因为它们会突然地从一般人变身为恐怖的怪兽,因此人们尝试着查找能够奇迹似地将狼人一枪毙命的银弹。

没有银弹:简单来说就是软件开发由于各种bug缺陷,延误,预算等因素随时会变成怪兽,我们希望有一种完美方法(银弹)能解决这个问题,事实上没有。

测试虽然能够解决我们很多问题,但依然有其局限,不能拿着一把锤子看啥都是钉子,这些都是我们的软件开发的工具箱里面的一个工具而已。

但是总得来说,大部分团队的测试还远没有达到一个合格的水平,绝大多数问题都是因为测试不够,软件质量太低造成的,才会出现到处救火的情况。所以还是抓紧写测试吧。

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你

关注我的微信公众号【伤心的辣条】免费获取~

送上一句话:

世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。

推荐好文:

包装成1年工作经验的测试工程师,我给他的面试前的建议如下

自动化测试到底要学什么?

为何跳槽不考虑腾讯?聊聊我和鹅厂的一点往事

自动化测试和手动测试哪个更高级?

新手必看:怎么写一个合格的测试用例?

python登录接口测试问题记录与解决 ( 干 货 )

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值