课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
单元测试技术的学习与应用是每一位软件测试程序员都应该熟练掌握的一个测试方式,下面我们就通过案例分析来简单了解一下,单元测试技术应用方法分享。
写单元测试的过程往往伴随着重构;代码重构同样需要单元测试保证代码正确运行。
重构需要遵守的纪律:无测试重构无意义,频繁重构、果断重构、坚决重构;
持续重构
将麻烦扼杀在摇篮;
果断重构
敏捷编程的名言之一。规则很简单:重构时要勇敢。勇敢尝试,勇敢修改,不用害怕代码。
让测试始终能通过
建一个绿色安全区,不允许破窗出现。
留条出路
仓库打好tag,以便在需要的时候能够回滚。
可测试的代码
可测试的代码就是解耦了的代码;可测试的代码帮助我们实现更好的抽象。
测试先行的本质能力要求是接口的设计能力——能否清晰的定义出设计单元的边界。
如何理解单元测试代码覆盖率
不要把它们变成管理的指标。
代码覆盖率的一大忌讳:为了追求代码覆盖率,只测试不进行验证;
一味追求代码覆盖率,往往写出无效的单元测试,额外增加了维护成本,终不得不放弃以失败告终。
与其追求代码覆盖率,不如将重点关注在确保写出有意义的测试。
隔离单元测试与集成测试
集成测试是对一个工作单元进行的测试,这个测试对被测试的工作单元没有完全的控制,并使用该工作单元一个或多个真实依赖,例如时间、网络、数据库、线程或随机数生成器等。
任何测试,如果它的运行速度不快,结果不稳定,或者要用到被测试单元的一个或多个真实依赖,就是集成测试。
在日常开发过程,我们需要建一个绿色安全区:单元测试与集成测试隔离;
集成测试不够稳定,运行时间长等问题,如果不做隔离,日常开发浪费时间和精力维护,导致开发人员不再信任测试。
单元测试与ABTest
单元测试与ABTest有什么关系吗?事实上没有什么关系。但一定程度程度上,它们本质是相同的,都是保障线上代码质量(当然单测的成本,对于基建、开发者的能力的要求更高);
在日常开发中,经常主动为新的代码逻辑增加AB开关,一旦线上出问题留一条后路;发生问题的时候往往感慨AB开关救我一命;
单元测试可以让问题左移,防止问题上线,同样是一道保护;
如果有一天团队同学愿意主动增加单元测试来保护自己的代码,那么单元测试这件事就算比较成功了。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。