GO语言实践工程之测试 | 青训营笔记

37 阅读2分钟

这是我参与「第五届青训营」笔记创作活动的第四天。

一:本堂课的重点内容

image.png

二:详细知识点如下

image.png

1、单元测试

1)规则

image.png

2)实例

image.png

3)评估单元测试——覆盖率

描述程序中源代码被测试的比例和程度,所得比例称为代码覆盖率。简单来理解,就是单元测试中代码执行量与代码总量之间的比率。

image.png image.png 代码覆盖率统计是用来发现没有被测试覆盖的代码; 代码覆盖率统计不能完全用来衡量代码质量

2、mock

用来模拟测试代码所依赖的外部类。因为我们所编写的代码往往存在大量复杂的外部依赖,或者依赖于特定的环境才能正常运行。这时我们可以选择使用 Mock 来构造这些外部依赖,使它们产生符合我们期待的行为(例如返回特定的值),但不需要真正地去构造外部依赖。需要注意的是,Mock 出来的对象并不会真实执行。

image.png image.png 执行打桩函数后不再依赖包(本地文件)

3、基准测试

在计算中,基准是运行一个计算机程序、一组程序或其他操作的行为,以评估一个对象的相对性能。 可以在某个时候通过基准测试建立一个已知的性能水平(称为基准线),当系统的软硬件环境发生变化之后再进行一次基准测试以确定那些变化对性能的影响。

image.png 关键点:

测试方法:到底使用微基准测试,介基准测试,还是使用宏基准测试,需要根据我们的需要选择一个合适的。

测试工具:选择合适的测试工具,能更好的精确的测量出我们的数据。

某个目标场景:性能测试时,往往需要选择一些场景。比如到底只是达到某个比较低的标准即可,还是想直接把系统压死等等

某项性能指标:需要知道这一次到底追求的是哪个性能指标,到底是QPS还是吞吐量,还是TP99等等。 可对比:用不同的方法或者工具进行多次测试进行数据对比

三、课后个人总结

作为开发人员,当我们完成一个功能的时候,就应该针对性的考虑是否要测试该功能,这样就避免了项目后期工作中的应接不暇,才能够更好的完成单元测试环节。通常基准测试就是要随时进行测试因子变量的变更,我们才能真正的得到最优的测试结果,只要有可能,就应该使用实际数据来进行基准测试。

四、引用参考

blog.csdn.net/he992284854…