zoukankan      html  css  js  c++  java
  • 单元测试笔记

      1.测试代码的可读性和非测试代码是同样重要的,它记录了真实代码如何工作和应该如何使用,因此如果测试很容易阅读,使用者对于真实代码的行为会有更好的理解。

      2.好的测试代码应当做到:对使用者隐去不重要的细节,以便最重要的细节会更突出。具体做法,可以构建多个辅助函数,使得测试代码精炼成一行代码:“对于这样的输入/情形,期望有这样的行为/输出”,这除了让代码紧凑而又易读,让测试的表述保持很短还会让增加测试变得很简单。

      3.使用更高级的assert,如python中unittest模块中的assertEqual()方法,该方法在测试失败的时候会给出具体的错误消息,这会对我们有助于改正bug。但是这样也许还不够好,于是我们可以人工打造更好的测试函数,得到更好更完整的错误信息,比如使得得到的错误信息可以按格式打印出:

      input:xxx;

      expected output:xxx;

      actual output:xxx;

      4.精心设计测试输入,基本原则是应当选择一组最简单的输入,使得它能够完整地使用被测代码。在选取测试输入的时候,也不要将所有输入写在一个语句里,最好将输入按类别分成几条语句,比如一句专门用来测试边界条件、一句专门测试缓冲区溢出等。

      5.测试函数的命名也应当讲究规则,最好使用Test_functionName这种格式,名字应具有较好的描述性,不要害怕名字太长或者太繁琐,因为整个代码库不会调用这个函数,因此要避免使用长函数名的理由在这里并不适用。好的函数名相当于一条注释,并且当测试失败的时候,如果输出了该函数的名字,也会有利于更正bug。

  • 相关阅读:
    从安装.net Core 到helloWord(Mac上)
    阿里云-对象储存OSS
    图片处理
    项目中 添加 swift代码 真机调试 错误
    iOS面试总结
    IOS APP配置.plist汇总
    cocoapods安装问题
    iOS8使用UIVisualEffectView实现模糊效果
    ios键盘回收终极版
    ?C++ 缺少参数的默认参数
  • 原文地址:https://www.cnblogs.com/gongcr/p/6691115.html
Copyright © 2011-2022 走看看