接口自動(dòng)化測試首先需要安裝RequestsLibrary庫
pip install robotframework-requests
下面直接分享幾個(gè)完整的case腳本,供大家參考哈
*** Settings ***
Library RequestsLibrary
*** Test Cases ***
官網(wǎng)
${head} Create Dictionary User-Agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
Create Session api https://xxxxx ${head} verify=True
${a} Set Variable data[username]=xxxx
$ Set Variable data[password]=xxxx
${c} Set Variable data[remember]=1
${addr} Post Request api /xxx/login params=${a}&$&${c}
log ${addr.content}
${responsedata} To Json ${addr.content}
${wq} evaluate json.dumps(${responsedata},ensure_ascii=False) modules=json
log ${wq}
后臺(tái)登錄
${head} Create Dictionary Referer=http://xxxxx/authorize?appkey=100002&returnurl=http://xxxxx
Create Session api http://xxxxx ${head}
${a} Set Variable userName=xxxx
$ Set Variable userPassword=111111
${c} Set Variable declineReason=
${addr} Post Request api /xxx/login params=${a}&$&${c}
log ${addr.content}
${responsedata} To Json ${addr.content}
${wq} evaluate json.dumps(${responsedata},ensure_ascii=False) modules=json
log ${wq}
${exp_id} evaluate (json.loads('${wq}'))['data']['url'] modules=json
${exp_id} Evaluate re.findall(r'=(.+?)&state','''${exp_id}''') re
log ${exp_id[0]}
Set Global Variable ${exp_id}
callback
${aa} Create Session api http://xxxxx
${a} Set Variable ticket=${exp_id[0]}
$ Set Variable state=
${addr} get Request api /xxxx params=${a}&$
log ${addr.content}
Comment ${responsedata} To Json ${addr.content}
Comment ${wq} evaluate json.dumps(${responsedata},ensure_ascii=False) modules=json
Comment log ${wq}
${a1} Set Variable demandId=xxxxx
${b1} Set Variable declineType=12
${c1} Set Variable declineReason=
${addr1} Post Request api /xxxxxx params=${a1}&${b1}&${c1}
log ${addr1.content}
${responsedata1} To Json ${addr1.content}
${wq1} evaluate json.dumps(${responsedata1},ensure_ascii=False) modules=json
log ${wq1}
log ${aa.cookies}
Set Global Variable ${aa.cookies}
審核
Create Session api http://xxxxxx cookies=${aa.cookies}
${a} Set Variable demandId=xxxxx
$ Set Variable declineType=12
${c} Set Variable declineReason=
${addr} Post Request api /xxxxxx params=${a}&$&${c}
log ${addr.content}
log ${addr.cookies}
${responsedata} To Json ${addr.content}
${wq} evaluate json.dumps(${responsedata},ensure_ascii=False) modules=json
log ${wq}