[Day 01] 单元测试是什麽?为什麽要做单元测试?

[Day 01] 单元测试是什麽?为什麽要做单元测试?

相信只要在资讯业待过一阵子,
一定都会听过单元测试,
虽然不一定有写过,
相信多少也会有些概念,
但是正所谓,
戏法人人会变,
巧妙各有不同。

那到底什麽是好的单元测试呢?

有人说好的单元测试应该具有以下几个特点:

  • 自动化的程序
  • 程序会呼叫被测试的工作单元,并对结果进行验证
  • 通常会使用单元测试的框架来做(当然功力够要自己写也可以)
  • 单元测试的特性:可靠、易读、容易维护、稳定一致(只要程序没改)

当然我们为什麽要做单元测试呢?
毕竟依靠人来测试,
可能会因为人的各种状态,
可能因心情不好、身体不好、精神不好,
各种因素而会影响测试的结果,
但是程序最大的优点就是:
每次执行出来的结果都是一样。
就连下面这个画面每次出现也都长一样(笑)
https://ithelp.ithome.com.tw/upload/images/20210902/20105694OzgysOMQMz.png

如果我们的单元测试写得好,
我们就可以确保我们的程序执行出来是没有问题的,
另外单元测试通常是不包含处理资料,
例如像资料库这样的,
因为资料库取出的资料可能每次都不一样,
这个就属於整合测试的部分,
当然整合测试也是很重要,
但是不在我们这一次要谈的内容里面。


<<:  [Day 00] 目录

>>:  Day 02 : 用於生产的机械学习 ML in Production

[Day17]What is Merkle tree? - 2

hi~今天要延续昨天merkle tree的主题! 我们昨天简述完之後,有用图解,希望大家有更清楚...

[Day9]C# 鸡础观念- 省去重复程序码的好帮手~for回圈

好烦好烦,有时候就为了1+2+..+100, 写了超长程序, 那又臭又长的程度堪比裹脚布啊。 for...

Day13: GuardDuty结果汇出至S3、发送告警Email设定

如何把GuardDuty找到的结果汇出到S3储存 GuardDuty找到的结果会保留90天,如果想要...

[Day 17 - npm] 哆啦A梦有百宝袋,我有套件管理工具npm

前端的社群发展愈来愈蓬勃,延伸出各式各样基於 HTML、CSS、JS 的开源套件,像是 Bootst...

萤幕录影和笔电录音-- Windows 7/8

新版本的 Windows 作业系统,但是不少用户还是喜欢用经典的 Windows 7/8 版本。我们...