同一个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包中多个接口做自动化测试的更多相关文章

  1. Linux下用jar命令替换war包中的文件【转】

    问题背景:在Linux环境上的weblogic发布war包,有时候只是修改了几个文件,也要上传整个war包,这样很费时间,因此整理了一下Linux环境,更新单个文件的方法. 1.如果要替换的文件直接在 ...

  2. 替换war包中的文件

    原文:https://blog.csdn.net/wuawua1/article/details/53906700 1.如果要替换的文件直接在war包的根目录(一级目录)下,直接使用jar uvf命令 ...

  3. Maven引入本地Jar包并打包进War包中

    1.概述 在平时的开发中,有一些Jar包因为种种原因,在Maven的中央仓库中没有收录,所以就要使用本地引入的方式加入进来. 2. 拷贝至项目根目录 项目根目录即pom.xml文件所在的同级目录,可以 ...

  4. python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)

    简介 上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试. 什么是接口测试 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统 ...

  5. war包中少了class文件

    用eclipse的maven工具打包(执行mvn clean install  和   mvn package)后,再启动wildfly, war包应该会自动复制到wildfly的deployment ...

  6. spring项目使用mave将第三方jar包打进war包中

    背景:一个标准的ssm项目,需要使用到第三方jar,现需要将项目发布到liunx的服务器上,将项目打成war包,第三方war包也需要打进去 首先是直接打包,发现第三方jar包并没有打进去......蛋 ...

  7. MAVEN打包时没有将src/main/cache文件夹打到到WAR包中

    某项目中ehcache配置文件写在src/main/cache中,结果用maven打包时,得到的WAR包里面没有这个文件夹 因为maven打包时默认只打包src/main/java中的文件和src/m ...

  8. 如何正确读取war包中配置文件的路径

    转自:http://free-chenwei.iteye.com/blog/1507480 下面展示一段代码String path = getClass().getResource("/&q ...

  9. java war包 路径--解决war包中文件路径问题

    https://blog.csdn.net/u013409283/article/details/51480948 转自:http://free-chenwei.iteye.com/blog/1507 ...

随机推荐

  1. 【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的 ...

  2. Winsock网络编程

    Winsock是Windows下网络编程的标准接口.使用Winsock编程的步骤一般是比较固定的. 首先要包含头文件#include <WinSock2.h>,同时要添加WS2_32.li ...

  3. VMware Coding Challenge: Removing Duplicates Entries

    static LinkedListNode removeDuplicates(LinkedListNode list) { LinkedListNode cur = list; HashSet< ...

  4. SQL Server 公用表表达式(CTE)实现递归的方法

    公用表表达式简介: 公用表表达式 (CTE) 可以认为是在单个 SELECT.INSERT.UPDATE.DELETE 或 CREATE VIEW 语句的执行范围内定义的临时结果集.CTE 与派生表类 ...

  5. JSON—fastJSON

    FastJSON的简介和作用? 1:基于java实现的JSON解析器和生成器 2:将java对象序列化成JSON字符串 3:将JSON字符串反序列化得到java对象 (在服务端生成java是很麻烦的事 ...

  6. vs2013中将原来在iis express中的网站转到iis中时,报“无法在web服务器上调试”的解决方法

    之前在网上也搜索过,但没有一个是正确的,后来在微软网站上发现问题的解决方法: 在web.config中,打开调试就可以了,具体方法为: 在web.config中 在以下配置节中加入以下代码 <c ...

  7. Masonry 适配label多行

    设置属性后,然后根据文本自动多行显示,无需设置标签高度约束 1 属性preferredMaxLayoutWidth,如:label.preferredMaxLayoutWidth = (WidthSc ...

  8. 中国用户通过rchange用银联充值到PerfectMoney再给BTC-E充值进行搬砖的方法

    最近迷上了比特币这个疯狂的东西,相信很多技术人员都感兴趣. 比特币.莱特币钱包下载和把数据迁移到C盘以外其他盘的方法. 莱特币和山寨币的原理跟比特币基本上一样,可以参考这个方法进行,莱特币的钱包数据迁 ...

  9. 华为C/C++笔试题&答案

    1.static有什么用途?(请至少说明两种) 1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变. 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问 ...

  10. USB开发库STSW-STM32121文件分析

    hw_config.c: 该文件中包含系统配置的函数. usb_desc.c:各种描述符 usb-endp.c:就两个函数分别处理端点1的IN和端点2的OUT. usb_istr.c: 该文件中只有一 ...