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 ...
随机推荐
- EF5.0区别于EF4.0的增删改写法
// 实现对数据库的添加功能,添加实现EF框架的引用 public T AddEntity(T entity) { //EF4.0的写法 添加实体 //db.CreateObjectSet<T& ...
- react native 示例代码
https://react.rocks/tag/ReactNative?show=60 https://github.com/ReactNativeNews/React-Native-Apps
- 008-centos服务管理
- UVA 475
/* 通过这题 学会了 两个词组 immediately to the left 是左邻的意思 immediately to the right 这个是右邻的意思 */ #include <io ...
- VS相关设置
1.显示行号 工具-〉选项-〉文本编辑器-〉语言(比如C#)-〉显示-〉行号 2.“解决方案资源管理器”被拖出来了,无法还原 两种方法:1.窗口-->重置窗口布局2.工具-->导入和导出设 ...
- angularjs 路由参数
.state('classrooms',{ url: '/classrooms/:id' }) .state('classrooms',{ url: '/classrooms/{id}' }) .st ...
- GDPR给安全的影响
违反GDPR的代价过于巨大,因而你不得不为那些预料不到的后果考虑,而且因为无法使用Whois数据,无形中也扩大了威胁界面.因为GDPR的存在,可供黑客入侵的威胁界面显著增长,不是增加了一点点,而是翻了 ...
- ACM题目————STL + 全排列
今天碰到一个函数,感觉挺好用的,全排列函数 next_permutation! 求全排列的函数,基本上与自己写的DFS时间复杂度差不多,毕竟是标准库.(2018-1-4 添加) 话不多说,直接上题. ...
- Java中字符转int
Java中字符转int 方法一代码: //直接使用静态方法,不会产生多余的对象,但会抛出异常 //parseInt 方法都有两个参数, 第一个参数就是要转换的对象, 第二个参数是进制基数, 可以是 2 ...
- dba和运维专家们说有丰富的大型分布式系统架构设计经验纯属扯淡
如果,一开始就从事dba和运维的专家们说他们有丰富的大型分布式系统架构设计经验,那纯属扯淡.除非,他们从是从开发专家或者架构师转型而来,那么他们才有资格说自己有丰富的大型分布式系统架构设计经验. 运维 ...