API接口自动化之3 同一个war包中多个接口做自动化测试
同一个war包中多个接口做自动化测试
一个接口用一个测试类,每个测试用例如下,比如下面是4个测试用例,每个详细的测试用例中含有请求入参,返回体校验,以此来判断每条测试用例是否通过
一个war包中,若含有多个接口,则增加多个测试类,每个测试类对应的测试用例

问题是:
1. 如果接口中需求复杂,入参较多,测试用例较多,则单个测试用例会非常的长,占很大的篇幅。比如注册接口,我遇到了20个入参,那我的键值对有20个左右;
注册接口,测试用例有上百个,那我一个java文件几千行,太长了,自己都不想看下去了。。。。
且如果后期,需求需要增加更多的入参,则单个接口的测试用例,相当于要全部改写更新。 。。
像这种复杂的接口,我能想到的就是请求体作为一个string, 存入DB中,然后从DB中取出,调接口测试,检查返回值。
对于单个接口表的设计,要用到,序号,测试用力名称,请求体,断言,通过标记
然后将统一的比如,url,请求方式,存放在关联表中。
CREATE TABLE API_TASK(
ID INT IDENTITY(1,1),
API_NAME VARCHAR(50),
API_HOST VARCHAR(100),
API_URL VARCHAR(500),
API_TYPE VARCHAR(50),
API_GROUPID INT,
API_MEMO VARCHAR(500)
) CREATE TABLE API_CASE(
CASE_ID INT IDENTITY(1,1) PRIMARY KEY,
API_ID INT,
CASE_NUM INT,
CASEPIORITY INT,
CASE_NAME VARCHAR(500),
CASE_BODY VARCHAR(500),
CASE_ASSERT VARCHAR(500),
CASE_PASS INT,
CASE_MEMO VARCHAR(500)
)
ALTER TABLE API_TASK ADD PRIMARY KEY (ID)
ALTER TABLE API_CASE ADD CONSTRAINT FK_API_ID FOREIGN KEY(API_ID) REFERENCES API_TASK (ID)
SELECT API_NAME,API_HOST,API_URL,API_TYPE,CASEPIORITY,CASE_NAME,CASE_BODY,CASE_ASSERT
FROM API_TASK
JOIN API_CASE ON Api_id =id

API接口自动化之3 同一个war包中多个接口做自动化测试的更多相关文章
- Linux下用jar命令替换war包中的文件【转】
问题背景:在Linux环境上的weblogic发布war包,有时候只是修改了几个文件,也要上传整个war包,这样很费时间,因此整理了一下Linux环境,更新单个文件的方法. 1.如果要替换的文件直接在 ...
- 替换war包中的文件
原文:https://blog.csdn.net/wuawua1/article/details/53906700 1.如果要替换的文件直接在war包的根目录(一级目录)下,直接使用jar uvf命令 ...
- Maven引入本地Jar包并打包进War包中
1.概述 在平时的开发中,有一些Jar包因为种种原因,在Maven的中央仓库中没有收录,所以就要使用本地引入的方式加入进来. 2. 拷贝至项目根目录 项目根目录即pom.xml文件所在的同级目录,可以 ...
- python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)
简介 上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试. 什么是接口测试 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统 ...
- war包中少了class文件
用eclipse的maven工具打包(执行mvn clean install 和 mvn package)后,再启动wildfly, war包应该会自动复制到wildfly的deployment ...
- spring项目使用mave将第三方jar包打进war包中
背景:一个标准的ssm项目,需要使用到第三方jar,现需要将项目发布到liunx的服务器上,将项目打成war包,第三方war包也需要打进去 首先是直接打包,发现第三方jar包并没有打进去......蛋 ...
- MAVEN打包时没有将src/main/cache文件夹打到到WAR包中
某项目中ehcache配置文件写在src/main/cache中,结果用maven打包时,得到的WAR包里面没有这个文件夹 因为maven打包时默认只打包src/main/java中的文件和src/m ...
- 如何正确读取war包中配置文件的路径
转自:http://free-chenwei.iteye.com/blog/1507480 下面展示一段代码String path = getClass().getResource("/&q ...
- java war包 路径--解决war包中文件路径问题
https://blog.csdn.net/u013409283/article/details/51480948 转自:http://free-chenwei.iteye.com/blog/1507 ...
随机推荐
- 【Win7 x64】+【annaconda3】+ 【python3.5.2】+【tensorflow-gpu】 [最终配置 gtx 940mx + Cuda8.0+cudnn v5.1 + tensorflow-gpu1.0.0 ]
1.安装cuda Toolkit 和cudnn (百度云可下载,版本需要对应) 2.配置环境变量: 3.安装cudnn(需要拷贝一些dll和lib来进行配置) 4.进入cmd,找到anaconda3的 ...
- Winsock网络编程
Winsock是Windows下网络编程的标准接口.使用Winsock编程的步骤一般是比较固定的. 首先要包含头文件#include <WinSock2.h>,同时要添加WS2_32.li ...
- VMware Coding Challenge: Removing Duplicates Entries
static LinkedListNode removeDuplicates(LinkedListNode list) { LinkedListNode cur = list; HashSet< ...
- SQL Server 公用表表达式(CTE)实现递归的方法
公用表表达式简介: 公用表表达式 (CTE) 可以认为是在单个 SELECT.INSERT.UPDATE.DELETE 或 CREATE VIEW 语句的执行范围内定义的临时结果集.CTE 与派生表类 ...
- JSON—fastJSON
FastJSON的简介和作用? 1:基于java实现的JSON解析器和生成器 2:将java对象序列化成JSON字符串 3:将JSON字符串反序列化得到java对象 (在服务端生成java是很麻烦的事 ...
- vs2013中将原来在iis express中的网站转到iis中时,报“无法在web服务器上调试”的解决方法
之前在网上也搜索过,但没有一个是正确的,后来在微软网站上发现问题的解决方法: 在web.config中,打开调试就可以了,具体方法为: 在web.config中 在以下配置节中加入以下代码 <c ...
- Masonry 适配label多行
设置属性后,然后根据文本自动多行显示,无需设置标签高度约束 1 属性preferredMaxLayoutWidth,如:label.preferredMaxLayoutWidth = (WidthSc ...
- 中国用户通过rchange用银联充值到PerfectMoney再给BTC-E充值进行搬砖的方法
最近迷上了比特币这个疯狂的东西,相信很多技术人员都感兴趣. 比特币.莱特币钱包下载和把数据迁移到C盘以外其他盘的方法. 莱特币和山寨币的原理跟比特币基本上一样,可以参考这个方法进行,莱特币的钱包数据迁 ...
- 华为C/C++笔试题&答案
1.static有什么用途?(请至少说明两种) 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变. 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问 ...
- USB开发库STSW-STM32121文件分析
hw_config.c: 该文件中包含系统配置的函数. usb_desc.c:各种描述符 usb-endp.c:就两个函数分别处理端点1的IN和端点2的OUT. usb_istr.c: 该文件中只有一 ...