课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
单元测试是程序员在学习软件测试技术的时候需要重点掌握的一个软件测试技术,而本文我们就通过案例分析来了解一下,零基础学习单元测试需要掌握哪些知识。
可以放松的部分
尽管说我们需要让单元测试保持代码保持整洁,并需要向生产代码一样地重视它。但并不意味着我们的测试代码和生产代码的准则是完全一样的。因为单元测试的准则是具有可读性的代码并能精准地描述关注的测试功能边界。
所以有一些内容是不需要和生产代码保持一致的。其中明显的就是性能要求。
我们在线上代码中需要对系统性能进行各种优化,但是单元测试的代码是跑在测试环境中并且单个逻辑每次只执行一遍,对单元测试来说,0.1ms的逻辑和1ms的逻辑差距可能并不明显。这样的情况下我们可能会选用一下表达能力更强的方法来进行项目的编写比如使用"+"号对字符串进行拼接,我们一般都会用StringBuilder,但是不得不说直接使用“+”拼接的实现可读性更高一点。除此之外还有一些异步的功能可以使用串行化来校验,以便校验每一步的结果。
单一概念
为了保证每一个单元测试中逻辑的可读性,所以我们希望每一个单元测试只对一个概念进行测试,这样就可以用一组give-when-then的方法来对这个测试概念进行描述。当我们发现单元测试存在多个概念的时候就会将他们拆开分别进行测试。这样就避免了多个概念聚合在一个单元测试方法中的时候,会犹豫复合概念导致掩盖了一些遗漏的测试点在其中。同时也保证了单元测试的可读性。
其他原则
除此之外,单元测试还要保证:
快速性:单元测试可快速执行,支持频繁测试。
独立性:单元测试不互相依赖,随时以任意顺序执行。
可重复性:单元测试可以反复执行且结果统一,否则永远会有功能失败的借口。
可检验:单元测试要明确地通过布尔值来表示检测结果,而非通过其他诸如日志的辅助手段。
及时性:要在开始编写业务代码前编写,让业务代码去覆盖测试。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。