单元测试使用记录

什么是单元测试

简单来说就是对一个类中的方法进行测试,对输出的结果检查判断是否符合预期结果

但是在多年的工作中,从来没有哪个项目中真正系统的用到了单元测试,因此对它还是很陌生的,也就造成更加不会在项目中区使用它。

如何使用

以前不使用单元单元测试,是因为觉得没有必要:既然单元测试是对方法输入不同参数,然后对输出进行判断。那么方法本身也必定已经对不同参数进行过判断和不同处理,才会有不同的输出,那么在单元测试代码中再进行一次参数判断,不是重复劳动吗,这么做有什么意义呢?

经过学习后才明白,之所以有上面的错误理解,是弄错了单元测试代码的编写时机和方式。

首先,单元测试代码是在被测试类和方法建立之前就要先建立的。之后,根据单元测试代码去建立被测试类,一步步编写被测试方法。方法中每实现一个测试,就运行对应的测试方法验证,直到所有的测试方法都被验证通过,方法就完成了。这就是所谓的:测试驱动开发。

其次,单元测试中,对与一个方法的测试并不是放在一个测试方法中的,每个测试方法只对一组参数的返回结果进行断言。

比如,当被测试方法中有5条执行路径时,就有5个对应的测试方法。测试方法的名称根据要断言的路径不同命名,这就是所谓的:单元测试可以作为代码文档使用

理解了上面的概念后,就等于掌握了单元测试的核心思想。

接口测试、功能测试、验收测试

使用单元测试时,我们一般会使用相应的框架。框架中除了单元测试外,一般还包含接口测试、功能测试、验收测试等功能。这些测试的使用思想和单元测试是一致的,只不过是测试对象有所不同。

接口测试,是使用框架中组件,模拟浏览器行为,请求接口的url地址,对返回结果进行断言

功能测试,是使用框架中组件,模拟浏览器行为,对某个前端页面进行点击,并对跳转和返回结果进行断言。

验收测试,是调用真实的浏览器内核,对某个前端页面进行点击,并对跳转和返回结果进行断言。

目前来说功能测试和验收测试对后端程序员不再适用。

因为现在应用基本都是前后端分离,后端只需要做好接口测试即可

codeception 在yii2中的基本使用

相关推荐
梁辰兴7 小时前
软件工程:单元测试
单元测试·软件工程·梁辰兴·‘设计原则·方法技术·tdd驱动·mock隔离
2601_962299883 天前
python脚本如何单元测试
python·单元测试·pytest·unittest·mock对象
牛油果子哥q4 天前
C++大型项目工程精讲:CMake完整实战、静态库&动态库、模块化拆分、单元测试、gdb调试、性能工具、工程踩坑全解
开发语言·c++·单元测试
leoZ2315 天前
AI+前端提效-09 AI赋能前端测试:单元测试、E2E测试自动生成,提升覆盖率
前端·人工智能·opencv·目标检测·数据挖掘·单元测试·语音识别
边吃番茄边敲代码9 天前
从本地工具到 MCP:给 Agent 接入独立工具服务,并补齐自动化测试
人工智能·python·功能测试·ai·单元测试·pytest
qq_452396239 天前
第十三篇:《测试策略:单元测试、组件测试、E2E 测试的落地实践》
单元测试
ly768910 天前
前端测试完整指南:从单元测试、组件测试到端到端测试与 CI/CD
前端·ci/cd·单元测试
咖啡星人k10 天前
2026 AI 自动化测试:让 AI 帮你写用例、跑测试、修 Bug(MonkeyCode 云端实战)
人工智能·功能测试·单元测试·测试用例·bug·集成测试
花椒技术11 天前
不是跑通一次 Demo:花椒 QA 怎样把真机 UI 自动化做成回归流程
ios·单元测试·测试