测试 | 青训营笔记

76 阅读2分钟

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


今天的学习内容主要是测试,在学习视频的后半部分讲师基于一个简单需求,从头至尾大概的模拟了一遍项目设计与实现的流程。在项目开发中,测试是很重要的一个环节,如果代码的质量不能够保证,那么项目上线后,可能因为潜在的错误没有修复而导致巨大的损失。良好的测试是保证代码质量的基础,所以在项目开发完成后,我们必须要进行完备的测试。测试一般分为:基准测试,mock测试,单元测试。其中,单元测试是成本最低,测试范围最广的一种测试,这里的单元指我们的代码中的一个方法,一个函数,等等。在编写单元测试的代码文件时,我们需要将文件名称开头设置为Test的大驼峰形式,然后,编写单元测试的函数,可用的依赖有test,和外部依赖中的assert包。并且在golang语言中,单元测试还可以添加 --cover参数来查看测试覆盖率,一般的测试覆盖率越高,越好。不过在一般的开发中,覆盖率超过百分之八十就已经很高了,一般是百分之五十,到百分之六十。mock测试,也是桩测试,当我们代码中有一些逻辑需要外部依赖,而在特定环境下可能不满足这种依赖环境,所以给函数打桩,也就是替换一个函数,使这部分逻辑不依赖于特定环境,能起到使测试更稳定的效果,同时在测试的最后需要unpatch,也就是解绑。在后半节课的项目实战中,通过实现了一个需求,了解了项目开发中的一个经典的模型:数据层——逻辑层——视图层,模型是根据需求变化的,好的模型结构使项目更加清晰。