Postman:通过CSV文件实现接口自动化测试,实际结果预期结果对比,断言判断用例是否通过

1、设置环境变量

点击设置,在MANAGE ENVIRONMENTS中设置固定的值,比如IP和一些固定不变的参数,设置好点击Update即可。

2、新建接口,选择对应的环境,填写接口信息,请求方法、请求地址,头文件,请求参数,进行请求是否OK

注:URL中IP已经在环境变量中配置好,只需要用{{IP}}表示即可(配置的变量都用{{}}表示)

3、断言Tests:通过断言编写出测试用例,判断实际结果是否符合预期结果

编写断言Tests:比较简单,基本可以依葫芦画瓢,主要是js语言

var res = JSON.parse(responseBody); // 获取返回结果body中所有的参数
tests["验证code是否为0"] = res.code == "0";// 判断返回值里面code是否为0
tests["验证返回值message是否返回正常"] = res.message == "success";//判断返回值里面message是否符合预期结果
 
if(res.body.coount = "1"){
    tests["验证count为1"]=true;
 
}else{
    tests["验证"] = false;
 
}


运行接口,可以从Test Results看到断言结果,pass说明通过,fail说明此用例失败

4、csv参数化,编写csv文件,实际结果与预期结果进行对比

例子:

登陆功能入参:入参三个参数对应的值以用{{}}代替

{
    "password":"{{username}}",
    "tenantCode":"{{username}}",
    "username":"{{username}}"
    
    }
 
返回参数:
{
    "code": 0,
    "messageCode": "0",
    "message": "success",
    "signature": "8770ccd5f07049a494baa04b1ef41f4c",
    "timestamp": 1605524057106,
    "body": {
        "count": 1,
        "size": 0,
        "current": 0,
        "data": {
            "enableSso": false,
            "disableSystemAccount": false,
            "bindingSecret": false,
            "enableGoogleAuto": false
        }
    }
}

编写csv文件

5、编写Tests断言脚本

var res = JSON.parse(responseBody);// 获取返回结果body中所有的参数
var username = data.username;       // 获取csv文件username参数的值
var password = data.password;       // 获取csv文件password参数的值
var tenantCode = data.tenantCode;   // 获取csv文件tenantCode参数的值
var code = data.code;
var message = data.message;
// pm.environment.set("code",code);
// pm.environment.set("message",message);
 
if(code=="0"&&message=="success"){
    tests["验证账号密码正确登陆,测试通过"]=true;
 
}else if(code=="11006"&&message=="Username or password error"){
    tests["验证账号错误,返回结果是否正确,测试通过"]=true;
 
}else if(code=="18026"&&message=="Decryption exception"){
    tests["验证密码错误,返回结果是否正确,测试通过"]=true;
 
}else if(code=="11006"&&message=="Username or password error"){
    tests["验证账号,返回结果是否正确,测试通过"]=true;
}else{
    tests["测试不通过"+"(输入参数" + username + ',' + password +','+ tenantCode + ")预期结果(code:"+ code +",message:"+ message+")(实际结果code:" +res.code+",message:" +res.message+')']=false;
    
}


6、运行测试用例,并查看测试报告结果

① 选择collections中的Run

② 添加Data,选择入参csv文件,并且可以点击Preview预览csv文件,勾选RUN ORDER中的接口

预览CSV文件

③ 点击RUN 2.7.2版本的按钮

④ 查看结果,总共执行四条用例,成功的有三条,失败的有一条,已经实现所需要的需求,达到实际结果与预期结果的对比,可以看到第四条用例执行失败之后,会把实际结果与预期结果打印出来

⑤ 点击左下角的Console,查看接口的请求信息和返回值

 

注:Tests断言不会写的童鞋,可以去postman官网查看官方文档,还是比较简单的,有疑问的地方可以找我交流沟通

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章