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官網查看官方文檔,還是比較簡單的,有疑問的地方可以找我交流溝通

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