同一个war包中多个接口做自动化测试
一个接口用一个测试类,每个测试用例如下,比如下面是4个测试用例,每个详细的测试用例中含有请求入参,返回体校验,以此来判断每条测试用例是否通过
一个war包中,若含有多个接口,则增加多个测试类,每个测试类对应的测试用例
问题是:
1. 如果接口中需求复杂,入参较多,测试用例较多,则单个测试用例会非常的长,占很大的篇幅。比如注册接口,我遇到了20个入参,那我的键值对有20个左右;
注册接口,测试用例有上百个,那我一个java文件几千行,太长了,自己都不想看下去了。。。。
且如果后期,需求需要增加更多的入参,则单个接口的测试用例,相当于要全部改写更新。 。。
像这种复杂的接口,我能想到的就是请求体作为一个string, 存入DB中,然后从DB中取出,调接口测试,检查返回值。
对于单个接口表的设计,要用到,序号,测试用力名称,请求体,断言,通过标记
然后将统一的比如,url,请求方式,存放在关联表中。
sql;gutter:true;">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