yapi測試工具的常用語法

2021-10-18 16:06:20 字數 4151 閱讀 2568

除錯開啟f12,前後置用console.log();

test用log();且在斷言失敗之前有效,斷言通過不會列印日誌

請求json格式資料示例:

"basedata":,

"keyinfo":}

,"dealinfo":[

,]}

給請求頭和請求body賦值函式:

var token =

'asdf5sd5f55'

;//給請求頭中的token 屬性賦值:

context.requestheader.token = token ;

//給請求頭整體賦值:

context.requestheader = header;

//給請求body中的屬性賦值:

context.requestbody.basedata.keyinfo.number =

'5625562'

;//給請求body中的整體屬性賦值:

context.requestbody = basedata;

//basedata為上面定義的大物件

//給請求query中的整體屬性賦值:

context.query = basedata;

//basedata為上面定義的大物件

定義常量,物件,數值:

var token =

'asdf5sd5f55'

;var test_obj =

;var add_obj =

;var deal_obj =

;var test_arr =

;

操作變數(範圍,專案):

var token =

'asdf5sd5f55'

;//定義變數:

storage.

setiteam

("token"

, token)

;//注:不管token是哪種資料型別,在賦值給變數後,都自動轉為字串型別

//獲取變數:

var token = storage.

getiteam

("token");

//注:同理。獲取到的變數值也是字串型別

"storage操作變數在前置/後置處理器,test中均支援,但是在服務端測試時,test不支援storage函式方法"

操作物件:

//物件中增加屬性:

test_obj.uuid =

'sdf5adf5sdf5a5f'

;"當test_obj物件中已經存在uuid這個屬性時,本次賦值會覆蓋掉原來的值,既為更新動作;當不存在時,會自動向物件中新增uuid的屬性,並賦值"

test_obj.data=

'不能為空'

;//物件中增加物件:

test_obj.add_obj = add_obj;

//物件中增加陣列:

test_obj.test_arr = test_arr;

//獲取物件中屬性的值:

var uuid = test.uuid;

var data = test.data;

運算元組:

//陣列中增加數值:

test_arr.

put(

'111'

, 『222』,

'333');

//陣列中增加物件:

test_arr.

put(add_obj, deal_obj)

;//陣列中增加陣列:

test_arr.

put(test_arr, test_arr)

;

獲取物件,陣列中的屬性值(以前面的json示例資料為例,以下同理):

//獲取物件中的屬性值:

var uuid = basedata.requesthead.uuid;

//獲取物件中陣列的第乙個屬性值:

var user_arr_0 = basedata.keyinfo.data.user_arr[0]

;//"12345689"

//獲取陣列中第乙個物件的屬性值:

var amount = basedata.dealinfo[0]

.amount;

//"666.00"

刪除物件,陣列中的屬性值:

//刪除物件中的屬性值:

delete basedata.requesthead.uuid;

//刪除物件中陣列的第乙個屬性值:

delete basedata.keyinfo.data.user_arr[0]

;//"12345689"

//刪除陣列中第乙個物件的屬性值:

delete basedata.dealinfo[0]

.amount;

//"666.00"

//刪除物件:

delete basedata.requesthead;

//刪除陣列:

delete basedata.dealinfo;

介面返回json格式資料示例:

獲取介面的請求、響應資料

//獲取請求head資料:

var requestheader = context.requestheader;

//獲取請求body資料:

var requestbody = context.requestbody;

//獲取請求屬性:

var hostname = context.hostname;

var href = context.href;

//獲取請求url

var method = context.method;

//獲取請求方式

var pathname = context.pathname;

//獲取請求路徑

//獲取響應head資料:

var responseheader = context.responseheader;

//獲取響應body資料:

var responsedata = context.responsedata;

//獲取http響應碼:

var responsestatus = context.responsestatus;

獲取介面的資料

//獲取本次介面響應的head資料:

var response = header;

//獲取本次介面響應的body資料:

var response = body;

//為上面的響應示例資料

//獲取本次或前面"某個"介面請求的資料:

var prev_response = records[id]

.params;

"為請求頭和請求body的共同資料,id為該介面的key值,本次的資料為請求body原始的資料,前置賦值取不到"

//獲取前面"某個"介面響應的資料:

var prev_response = records[id]

.body;

設定斷言

//斷言http請求狀態為200 :

assert.

equals

(status,

200)

;//斷言響應狀態為0 :

assert.

equals

(body.status,0)

;//斷言響應資訊不為success :

assert.

notequals

(body.statustext,

'success');

//斷言兩個物件相等:

assert.

deepequals

(body, response)

;//物件的屬性無前後順序,支援多層級物件、陣列的巢狀,但是無法指出具體哪乙個屬性不等

'如 和 斷言結果通過'

//斷言兩個物件不等:

assert.

notdeepequals

(body,

);

mysql常用語法 MySQL常用語法

更新資料 update 表名 set 健名 更改的值 where 建 刪除資料 delete from 表名 where 索引 create index 索引名稱 on 表名 鍵名 建立試圖 create view 檢視名 鍵,鍵 as select matchno,abs won lost fro...

mysql基本常用語法 mysql 常用語法

1.1.開啟 service mysql start 1.2.關閉 service mysql stop 1.3.重啟 service mysql restart 2.1.密碼明文 語法 mysql u使用者名稱 p使用者密碼 舉例 mysql uroot p123456 2.2.密碼密文 語法 m...

wiki常用語法

公司啟用了streber執行部分專案管理工作。streber基於wiki系統建立。在streber中,我們可以建立專案 project 可以為專案建立milestone task等等。與其他專案管理系統一樣,可以為每乙個task分配資源,指定執行時間。由於streber基於wiki組建,具備了wik...