项目实训-接口测试(十八)

项目实训-后端接口测试(十八)

文章目录

  • 项目实训-后端接口测试(十八)
    • 1.概述
    • 2.测试对象
    • 3.测试一
    • 4.测试二

1.概述

本篇博客将记录我在后端接口测试中的工作。

2.测试对象

在这里插入图片描述
在这里插入图片描述

3.测试一

在这里插入图片描述
这段代码是一个单元测试方法,用于验证在调用 orderControllermake_order 方法时,是否正确地触发了对 orderDaoinsertOrder 方法的调用。单元测试的目的是确保系统在特定输入下的行为符合预期。

该测试方法模拟了调用 make_order 方法时可能传入的各种参数,如用户ID、医生ID、科室名称等。这些参数用于模拟真实情况下的调用场景。

通过调用 orderController.make_order 方法,将预设的参数传入,然后使用 Mockito 框架的 verify 方法来验证 orderDao.insertOrder 方法是否被精确调用了一次。这种验证确保了在实际系统运行中,make_order 方法内部确实按预期地与数据库交互。

在测试方法中,使用了 Mockito 模拟对象来替代真实的 orderDao,这样可以避免对实际数据库的依赖,使测试更为独立和可控。通过 verify(orderDao, times(1)).insertOrder(...),确保了方法调用的次数和传递给 insertOrder 方法的参数与预期一致,从而验证了 make_order 方法的正确性。

这种单元测试方法有助于捕捉潜在的代码逻辑错误或者接口调用问题,提高了系统的稳定性和可靠性。
在这里插入图片描述
该测试与上述同理,不再赘述。

4.测试二

在这里插入图片描述
这段代码是一个JUnit单元测试方法,用于验证订单插入功能的正确性。它模拟了一个订单的各个属性,如用户ID、医生ID、科室名称等,并调用了 orderDaoinsertOrder 方法将这些模拟参数传入,模拟订单数据的插入操作。随后,通过调用 orderDaofindById 方法,根据用户ID查询刚刚插入的订单对象,并使用断言方法 assertNotNull 确保订单对象不为空。进一步地,通过多次调用 assertEquals 方法,逐一验证订单对象的各个属性与预期值是否一致,以此确保了订单数据插入和查询的准确性和一致性。

在实现过程中,使用了JUnit和Mockito框架,JUnit用于编写和运行单元测试,Mockito用于模拟 orderDao 的行为,避免对真实数据库的依赖,从而确保测试的独立性和可控性。这种测试方法有助于捕获和预防潜在的数据插入错误或对象属性映射问题,从而提高了系统在处理订单数据时的可靠性和稳定性。
在这里插入图片描述
该测试与上述同理,不再赘述。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/34774.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

echarts+vue2实战(二)

目录 一、WebSocket【双向通信】的使用 1.1、前端 1.2、后端 二、前端组件的合并与优化 三、全屏切换 3.1、单页面切换 3.2、同页面多端联动 四、主题切换 4.1、单页面切换 4.2、同页面多端联动 一、WebSocket【双向通信】的使用 1.1、前端 在utils文件夹里创建soc…

ArkUI开发学习随机——得物卡片,京东登录界面

案例一:得物卡片 代码: Column(){Column(){Image($r("app.media.mihoyo")).width(200).height(200)Row(){Text("今晚玩这个 | 每日游戏打卡").fontWeight(700).fontSize(16).padding(4)}.width(200)Text("No.12").fontWe…

盲盒小程序开发:解锁未知,探索无限惊喜

一、开启新篇章 在追求独特与新颖的时代,盲盒以其神秘感与未知性,成为了年轻人热衷的购物新方式。为了满足这一市场需求,我们精心打造了一款全新的盲盒小程序,带您步入一个充满未知与惊喜的购物新领域。 二、产品亮点 精选商品&…

【机器学习】K-Means算法详解:从原理到实践

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 K-Means算法详解:从原理到实践引言1. 基本原理1.1 簇与距离度量1.2 …

JLPT历年真题刷题小程序:Navi日语社全新升级,更新至2024年真题!

Navi日语社小程序专为日语能力考试设计,提供全网最全的JLPT备考真题资源,包括日语N1-N5等级考试的历年真题,2024年真题将在7月底更新。无论你是日语新手准备参加N3考试练练手,还是准备冲刺N1最高等级,都能在这个小程序…

基于Java微信小程序火锅店点餐系统设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码数据库🌟感兴趣的可以先收藏起来,还…

动态规划数字三角形模型——AcWing 275. 传纸条

动态规划数字三角形模型 定义 动态规划数字三角形模型是在一个三角形的数阵中,通过一定规则找到从顶部到底部的最优路径或最优值。 运用情况 通常用于解决具有递推关系、需要在不同路径中做出选择以达到最优结果的问题。比如计算最短路径、最大和等。 计算其他…

惯性级惯导的定位漂移估算

一般来说,惯性级陀螺仪指的是0.01度/小时的零偏稳定性(是否可以作为等效常值漂移呢?),其定位误差大约为1海里每小时,其具体估算方法可见秦永元老师的《惯性导航》一书中静基座下系统误差传播特性分析一节内…

【龙晰 离线安装openssl-devel】openssl-devel rpm 离线安装 需要下载哪些安rpm 包

进入龙晰镜像源地址下载 http://mirrors.openanolis.cn/anolis/8/BaseOS/x86_64/os/Packages/(base) [rootAI lib64]# yum install openssl-devel Last metadata expiration check: 14:03:32 ago on Fri 21 Jun 2024 07:26:56 AM CST. Dependencies resolved. Package …

公交车安全监控的智能化革新:4G车载视频监控与GPS卫星定位技术的融合

随着科技的快速发展,智能化监控技术在交通管理领域的应用日益广泛。特别是对于公交车这类公共交通工具,其安全监控的智能化、实时化、全面化显得尤为重要。综合运用最新的4G车载视频监控技术及GPS卫星定位技术,对公交车进行全方位、立体化、智…

正则表达式以及文本三剑客grep、sed、awk

正则表达式匹配的是文本内容,文本三剑客都是针对文本内容。 grep:过滤文本内容 sed:针对文本内容进行增删改查 awk:按行取列 一、grep grep的作用使用正则表达式来匹配文本内容 1、grep选项 -m:匹配几次之后停止…

【论文解读】通过多标记预测建立更好更快的大型语言模型

Meta 的这篇多标记预测论文显示,与当前的下一标记预测器相比,多头预测器内存效率高、性能更好、训练速度更快。 https://arxiv.org/pdf/2404.19737 主要收获: 多标记预测是对 LLM 训练的一种简单而强大的修改,可提高样本效率和各种任务的性能。这种方法在大规模应用中尤为…

从 Hadoop 迁移,无需淘汰和替换

我们仍然惊讶于有如此多的客户来找我们,希望从HDFS迁移到现代对象存储,如MinIO。我们现在以为每个人都已经完成了过渡,但每周,我们都会与一个决定进行过渡的主要、高技术性组织交谈。 很多时候,在这些讨论中&#xff…

Mac环境 aab包转apks,并安装apks

一、下载下载bundletool工具 Releases google/bundletool GitHub 二、将下载bundletool.jar包、aab、keystore文件全部放到同一个目录下 例如我全部放到download目录下 转换命令行: java -jar bundletool-all-1.16.0.jar build-apks --modeuniversal --bundle…

java运维交接项目逆向工程

​ 背景 有承接过Java项目运维的团队估计都处理过的一件事情,就是同步生产代码跟本地代码,条件再差些甚至要直接基于生产部署包逆向本地源码工程。而哪怕是原运维团队交接了源码,往往也会历史久远的原因,给了一份不太可靠的源码…

MySQL连接

MySQL工具包 MySQL实现简单链接 一 引入工具包 JBDCUtils,无需更改,直接使用即可。 import java.io.IOException; import java.io.InputStream; import java.sql.*; import java.util.Properties;public class JDBCUtil {private static String URL;p…

基于PHP+MySQL组合开发的在线客服小程序源码系统 带完整的安装代码包以及搭建教程

系统概述 源码系统是专门为满足企业在线客服需求而设计的,它集成了多种功能,能够帮助企业实现与用户的实时沟通、问题解答、信息反馈等。通过该系统,企业可以更好地了解用户需求,提升用户体验,增强用户对企业的信任感…

Linux[高级管理]——Squid代理服务器的部署和应用(传统模式详解)

🏡作者主页:点击! 👨‍💻Linux高级管理专栏:点击! ⏰️创作时间:2024年6月24日11点11分 🀄️文章质量:95分 目录 ————前言———— Squid功能 Squ…

【JavaEE精炼宝库】多线程进阶(1)常见锁策略 | CAS | ABA问题

目录 一、常见的锁策略: 1.1 悲观锁 | 乐观锁: 1.2 重量级锁 | 轻量级锁: 1.3 自旋锁 | 挂起等待锁: 1.4 公平锁 | 非公平锁: 1.5 可重入锁 | 不可重入锁: 1.6 互斥锁 | 读写锁: 1.7 面…

Spring Boot 集成 MinIO 实现文件上传

Spring Boot 集成 MinIO 实现文件上传 一、 Minio 服务准备 MinIO的搭建过程参考 Docker 搭建 MinIO 对象存储。 登录MinIO控制台&#xff0c;新建一个 Bucket&#xff0c;修改 Bucket 权限为公开。 二、MinIO 集成 添加 MinIO 依赖 <!-- https://mvnrepository.com/ar…