Larave之phpunit单元测试(一)之为什么要写单元测试

什么是单元测试

作为程序员,对测试这个词肯定不陌生,每次项目做完,都需要测试一遍,当然你可能会说:“这是测试工程师的工作!,我为什么要干”,不着急,看下去,文章会回答这个问题。

所谓单元测试,就是把代码以最小的单位进行测试,在php中,最小的单位可以理解为函数,也就是说对每个函数进行测试。

为什么要写单元测试

为了离猝死远一点,哈哈,开个玩笑,但是肯定会让你少掉一点头发。

首先来说,我也是从小白过来的,也是经历过社会的洗礼和岁月的摧残。

刚毕业那会儿,由于才疏学浅,写代码都很费劲,更别说什么单元测试了,都是写完接口用postman跑,一边跑一边改,但是到了测试那边后,还是会给我反馈回来一堆bug,比如数据对不上之类的,于是返回来又一遍一遍的用postman跑接口,并且每次项目迭代都要重新的跑接口,全都是体力活,效率向当低,并且测试一遍一遍的来叨饶你,你肯定难免会心里烦躁,最终,心力憔悴,猿类暴躁,离猝死越来越近。

最终公司也发现了项目返工频繁的状况,找我们总监谈了谈,最终定下了一个方案,让每个技术员都写单元测试,到最后公司会审核项目的单元测试覆盖率,核心代码覆盖率要尽量达到100%。

当时这个命令下发的时候,我是有点懵的,因为我从来没有接触过单元测试这个玩意,更别说单元测试覆盖率了,那能怎么办,求助度娘呗,毕竟是面向度娘编程的,在我不懈的努力后,我知道了PHPUNIT这个玩意,然后我才知道,单元测试,原来就是自己写代码进行自动化测试。

没错,我又懵了,开始在心里犯嘀咕:“写代码就够我喝一壶的了,还得写测试代码,这工作量不是更大了,我的头发还能保得住吗?”。带着这个疑惑,我将信将疑的开始了我的掉头发旅程,跟我想的差不多,写测试用例大概会占用我将近三分之一的工作时间,头发可能也比平时掉的快乐一些。

但是当我写完所有测试用例,并且执行通过的时候,我仿佛恍然间顿悟了,没错,我以后再测试自己写的接口的时候,再找bug的时候,貌似不用在postman上边一个一个手动的跑接口了,直接执行phpunit,就可以自动化的完成所有的测试,并且可以帮我快速的定位bug,心中暗喜,我的头发貌似可以保住了,即使是后期项目要进行重构,在单元测试的保障下,心里也没有那么恐惧了,一股莫名的自信油然而生。

总结

写单元测试,前期嘛,当然还是有点小痛苦的,特别是项目工期紧张的情况下,但是它带来的收益也绝对是让你满意的。

从手动测试,到自动化测试;

从手动找bug,到自动化定位bug;

每次项目改完需求后,每次项目迭代后,每次项目重构后,跑一遍单元测试,看着绿条自信的发布,这都无疑是爽哉爽哉的事情。

下一篇,我会分享一些单元测试的技巧,希望能帮助更多的小伙伴

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

对这是我的昵称

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值