整体接口测试

news2024/12/25 1:06:31

文章目录

    • 1.分类
        • 1.新增分类
          • 1.接口设计
          • 2.结果
        • 2.更新分类
          • 1.接口设计
          • 2.结果
        • 3.查询分类
          • 1.接口设计
          • 2.结果(少了一个count字段暂时不改)
        • 4.查询大类下分类
          • 1.接口设计
          • 2.结果
        • 5.删除分类
          • 1.接口设计
          • 2.结果
    • 2.标签
        • 1.新增标签
          • 1.接口设计
          • 2.结果
        • 2.更新标签
          • 1.接口设计
          • 2.结果
        • 3.删除标签
          • 1.接口设计
          • 2.结果
        • 4.根据分类查询标签
          • 1.接口设计
          • 2.结果(注意,这里是先根据映射表查询的所有标签id然后才去标签表中查的)
    • 3.题目
        • 1.新增单选题目
          • 1.接口设计
          • 2.结果
            • 题目信息表成功插入
            • 题目映射表插入时没有subject_id
            • 单选题目表也没有subject_id
          • 3.修改bug
            • 1.原因分析:之前设计的时候主动传入的subject的id,现在不传了就获取不到数据
            • 2.SubjectInfoDao.java 新增一条记录并返回id
            • 3.SubjectInfoDao.xml 实现方法使用 selectKey
            • 4.SubjectInfoServiceImpl.java 原来的插入方法,调用方法,这样会将返回的id插入到subjectInfo
            • 5.SubjectInfoDomainServiceImpl.java 插入时将获取的id放到BO中,其他逻辑不变
          • 4.测试
            • 1.结果
            • 2.题目信息表
            • 3.映射表
            • 4.单选表
        • 2.新增多选题目
          • 1.接口设计
          • 2.结果
        • 3.新增判断题目
          • 1.接口设计
          • 2.结果
        • 4.新增简答题目
          • 1.接口设计
          • 2.结果(新增失败)
          • 3.修改bug
            • 1.原因分析:之前传入答案使用的是optionList,但是现在使用了subjectAnswer替代,所以会是空指针异常
            • 2.调整一下subjectAnswer的插入逻辑,直接从subjectAnswer中获取即可
          • 4.测试
            • 1.结果
            • 2.题目信息表
            • 3.映射表
            • 4.简答表
        • 5.分页查询题目列表
          • 1.接口设计
          • 2.结果(应该返回start,但是返回了dbstart)
          • 3.修改bug
            • 1.直到最后一步返回的时候都是正常的,所以一定是在转换为json格式的时候出现问题了
            • 2.PageResult.java少了一个getStart的方法只有getDBStart,所以就获取到了dbstart
            • 3.测试,成功显示
        • 6.查询题目详情
          • 1.接口设计
          • 2.结果

1.分类

1.新增分类
1.接口设计

image-20240601132131387

2.结果

image-20240601132201534

image-20240601132216593

2.更新分类
1.接口设计

image-20240601132405859

2.结果

image-20240601132420465

image-20240601132507458

3.查询分类
1.接口设计

image-20240601132623112

2.结果(少了一个count字段暂时不改)

image-20240601132825481

4.查询大类下分类
1.接口设计

image-20240601133017183

2.结果

image-20240601133504559

5.删除分类
1.接口设计

image-20240601133706725

2.结果

image-20240601133647170

2.标签

1.新增标签
1.接口设计

image-20240601133850856

2.结果

image-20240601133909073

image-20240601134003086

2.更新标签
1.接口设计

image-20240601134100815

2.结果

image-20240601134225019

image-20240601134242193

3.删除标签
1.接口设计

image-20240601134341807

2.结果

image-20240601134408160

4.根据分类查询标签
1.接口设计

image-20240601134546435

2.结果(注意,这里是先根据映射表查询的所有标签id然后才去标签表中查的)

image-20240601135415192

3.题目

1.新增单选题目
1.接口设计

image-20240601135737436

2.结果

image-20240601140058338

题目信息表成功插入

image-20240601140112407

题目映射表插入时没有subject_id

image-20240601140244449

单选题目表也没有subject_id

image-20240601140353839

3.修改bug
1.原因分析:之前设计的时候主动传入的subject的id,现在不传了就获取不到数据

image-20240601140915401

2.SubjectInfoDao.java 新增一条记录并返回id
/**
 * 插入一条数据并返回id
 * @param subjectInfo
 * @return
 */
int insertAndReturnId(SubjectInfo subjectInfo);
3.SubjectInfoDao.xml 实现方法使用 selectKey
<!--新增一条记录并且返回id-->
<insert id="insertAndReturnId" keyProperty="id" useGeneratedKeys="true">
    <selectKey resultType="java.lang.Long" keyProperty="id" order="AFTER">
        SELECT LAST_INSERT_ID()
    </selectKey>
    insert into subject_info(subject_name, subject_difficult, settle_name, subject_type, subject_score,
    subject_parse, created_by, created_time, update_by, update_time)
    values (#{subjectName}, #{subjectDifficult}, #{settleName}, #{subjectType}, #{subjectScore}, #{subjectParse},
    #{createdBy}, #{createdTime}, #{updateBy}, #{updateTime})
</insert>
4.SubjectInfoServiceImpl.java 原来的插入方法,调用方法,这样会将返回的id插入到subjectInfo
/**
 * 新增数据
 *
 * @param subjectInfo 实例对象
 * @return 实例对象
 */
@Override
public SubjectInfo insert(SubjectInfo subjectInfo) {
    // 插入一条数据并返回id到SubjectInfo
    this.subjectInfoDao.insertAndReturnId(subjectInfo);
    return subjectInfo;
}
5.SubjectInfoDomainServiceImpl.java 插入时将获取的id放到BO中,其他逻辑不变

image-20240601144346494

4.测试
1.结果

image-20240601144427566

2.题目信息表

image-20240601144504615

3.映射表

image-20240601144519707

4.单选表

image-20240601144532605

2.新增多选题目
1.接口设计

image-20240601144743869

2.结果

image-20240601144803989

3.新增判断题目
1.接口设计

image-20240601145038410

2.结果

image-20240601145050370

4.新增简答题目
1.接口设计

image-20240601145548149

2.结果(新增失败)

image-20240601145734930

image-20240601145757022

3.修改bug
1.原因分析:之前传入答案使用的是optionList,但是现在使用了subjectAnswer替代,所以会是空指针异常

2.调整一下subjectAnswer的插入逻辑,直接从subjectAnswer中获取即可

image-20240601150423948

4.测试
1.结果

image-20240601150741860

2.题目信息表

image-20240601150820408

3.映射表

image-20240601150853693

4.简答表

image-20240601150909504

5.分页查询题目列表
1.接口设计

image-20240601153558402

2.结果(应该返回start,但是返回了dbstart)

image-20240601153628547

3.修改bug
1.直到最后一步返回的时候都是正常的,所以一定是在转换为json格式的时候出现问题了

image-20240601153926443

2.PageResult.java少了一个getStart的方法只有getDBStart,所以就获取到了dbstart

image-20240601154144580

3.测试,成功显示

image-20240601155005080

6.查询题目详情
1.接口设计

image-20240601155253619

2.结果

image-20240601160339331

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

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

相关文章

E5092A可配置的多端口测试仪

E5092A 可配置的多端口测试仪 多达 10 个端口的全交叉测量&#xff0c;或者最多 22 个端口的测量功能。 概述 E5092A 多端口测试仪可以灵活配置&#xff0c;并可与4 端口ENA 网络分析仪&#xff08;E5070B/E5071B/E5071C/E5080A&#xff09;结合使用&#xff0c;组成频率范…

信息安全管理中,文件销毁、硬盘销毁、数据销毁和物料销毁分别如何

文件销毁的方法主要有删除、覆盖、加密和物理破坏。硬盘销毁的方法主要有物理破坏、磁性破坏、化学破坏和高温破坏。数据销毁的方法主要有逻辑删除、物理破坏、磁性破坏和化学破坏。物料销毁的方法主要有回收利用、填埋处理、焚烧处理、生物降解和化学处理。 文件销毁的方法&a…

江协科技51单片机学习- p31 LCD1602液晶屏驱动

&#x1f680;write in front&#x1f680; &#x1f50e;大家好&#xff0c;我是黄桃罐头&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流 &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd;​…

Frida挂钩Java层代码与协议分析

Hook类中普通方法 在本文中&#xff0c;我们继续以某嘟牛应用为例&#xff0c;在用户点击登录按钮后&#xff0c;哪个方法会被调用。我们在上一篇文章中提到&#xff0c;搜索关键词 “Encrypt” 后&#xff0c;发现两个包含该字符串的 Java 方法。接下来&#xff0c;我们通过 …

AGI思考探究的意义、价值与乐趣Ⅳ

探究in context或Prompt对于LLM来说其根本意义&#xff0c;in context & Prompt Learning带给我们更深一层的提示是什么&#xff1f; 文章里的探索希望能够将in context或Prompt置身于一个更全局的视角来看待&#xff1a;将其视为在真实世界中时空认知流形所映射为数据流形…

路由器IP互联无线对讲系统解决方案

一、项目概况 随着信息化的全面深入发展&#xff0c;各行各业的通信需求日益增长&#xff0c;传统的通信方式无法满足跨网络、跨系统、跨媒介的通信互联互通&#xff0c;打破信息孤岛、提高协同效率&#xff0c;成为当前各行业融合通信的首要任务。尤其大型企业、学校、医院等…

第14课 Scratch少儿编程 入门篇:抓蝴蝶

开车自驾去旅行 故事背景&#xff1a; 春天到了&#xff0c;让我们一起春游&#xff01;公园的草坪上有五颜六色的花朵和翩翩起舞的蝴蝶&#xff0c;让我们拿起工具&#xff0c;去捉蝴蝶吧&#xff01;&#xff01; 程序原理: 添加绿色的草地角色和蝴蝶的角色&#xff0c;给…

【C++程序设计】——利用数组处理批量数据(一)

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-削好皮的Pineapple! &#x1f468;‍&#x1f4bb; hello 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 削好皮的Pineapple! 原创 &#x1f468;‍&#x1f4…

使用 Python 制作一个属于自己的 AI 搜索引擎

1. 使用到技术 OpenAI KEYSerper KEYBing Search 2. 原理解析 使用Google和Bing的搜搜结果交由OpenAI处理并给出回答。 3. 代码实现 import requests from lxml import etree import os from openai import OpenAI# 从环境变量中加载 API 密钥 os.environ["OPENAI_AP…

5G三大场景:eMBB、mMTC、uRLLC

1G,2G,3G,4G,5G有什么区别&#xff1f;5G的优势在哪&#xff1f;有什么应用&#xff1f; 1G,2G,3G,4G,5G有什么区别&#xff1f;5G的优势在哪&#xff1f;有什么应用&#xff1f;_3g4g5g的区别和作用-CSDN博客 从1G到4G&#xff0c;移动通信的核心是人与人之间的通信&#xff0…

Spring Cache框架(AOP思想)+ Redis实现数据缓存

文章目录 1 简介1.1 基本介绍1.2 为什么要用 Spring Cache&#xff1f; 2 使用方法2.1 依赖导入&#xff08;Maven&#xff09;2.2 常用注解2.3 使用步骤2.4 常用注解说明1&#xff09;EnableCaching2&#xff09;CachePut3&#xff09;Cacheable4&#xff09;CacheEvict 3 注意…

【云服务器】vscode + onethingAi + SSH远程连接

通过VS code远程连接服务器&#xff0c;并进行上传和下载文件操作_vs code 上传制定文件-CSDN博客 vscode远程连接服务器&#xff08;remote ssh&#xff09;上传本地文件到服务器(sftp)_vscode上传文件到服务器-CSDN博客 vscode连接远程服务器&#xff08;傻瓜式教学&#x…

批发行业手机开单-手机开单 电子单 源码CyberWinApp-SAAS 本地化及未来之窗行业应用跨平台架构

一、手机开单的好处 批发行业的业务拓展总是在路上&#xff0c;而手机开单的出现成为了业务人员的得力助手。无论身处何地&#xff0c;都能轻松操作&#xff0c;迅速完成开单流程&#xff0c;大幅提高工作效率。而且&#xff0c;通过手机还能明确开单人身份&#xff0c;自动完…

KaiwuDB 产品总监李月飞:让中国物联网用上放心的数据库产品

​2024年7月17日&#xff0c;KaiwuDB 产品总监李月飞受邀于 2024 可信数据库发展大会“能源与政务数据库应用创新”分论坛发表演讲。以下是李月飞主题演讲《深耕数据良田&#xff0c;KaiwuDB 洞见能源产业数字新生力》精华实录。 数据&#xff0c;给能源变革带来新的可能 众所…

基于SpringCloud alibaba的流媒体视频点播平台

基于SpringCloud alibaba的流媒体视频点播平台 前言整体架构具体实现视频播放 总结 先把项目地址放这 》基于SpringCloud alibaba的流媒体视频点播平台《 然后咱们来看看这个项目是干啥的。 前言 今天和大家分享一个项目&#xff0c;基于SpringCloud alibaba的流媒体视频点…

46 集合对象的创建与删除

集合&#xff08;set&#xff09;属于 Python 无序可变序列&#xff0c;使用一对大括号作为定界符&#xff0c;元素之间使用逗号分隔&#xff0c;同一个集合内的每个元素都是唯一的&#xff0c;元素之间不允许重复。 集合中只能包含数字、字符串、元组等不可变类型&#xff08;…

吴恩达老师机器学习作业-ex7

导入库&#xff0c;读取数据&#xff0c;查看数据类型等进行分析&#xff0c;可视化数据 import matplotlib.pyplot as plt import numpy as np import scipy.io as sio#读取数据 path "./ex7data2.mat" data sio.loadmat(path) # print(type(data)) # print(data…

安防监控平台智能边缘分析一体机视频智能分析客流统计检测算法详细介绍

在当今数字化时代&#xff0c;数据的重要性不言而喻。特别是在零售、交通、安防等行业中&#xff0c;准确的客流统计数据对于业务决策、资源优化和安全管理至关重要。随着技术的进步&#xff0c;智能边缘分析一体机的出现为客流统计提供了一种高效、实时的解决方案。本文将详细…

【教育宝-注册安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…

windows下设置java环境变量

1.打开window的环境变量设置 右键开始菜单选择系统 选择高级系统设置&#xff1a; 点击环境变量 2.在系统变量 新增 JAVA_HOME&#xff1b;该变量的值 选择jdk所在的目录即可。 JAVA_HOME: D:\Program Files\Java\jdk1.8.0_131 3. 在系统变量新增 classpath; 该变量的值设置…