中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
《上海悠悠接口自動化平臺》-1.新增API 與 各參數(shù)的描述

前言

每個API 對應一個接口,每個API 的關鍵字參數(shù)根據(jù)httprunner2 框架來定義的

API 描述

我們先看一個簡單的登錄接口,接口描述如下

    訪問地址:/api/v1/login/
請求類型:POST
請求頭部:application/json
請求參數(shù):{"username":"test", "password":"123456"}

需注意的是接口地址,只需要寫相對路徑,比如http://127.0.0.1:8000/api/v1/login/
前面的http://127.0.0.1:8000 這部分是環(huán)境地址,因為環(huán)境是可變的,
環(huán)境會有多套:

  • 開發(fā)環(huán)境

  • 測試環(huán)境

  • 聯(lián)調環(huán)境

  • 預發(fā)布環(huán)境。

所以不要在接口地址里面把環(huán)境地址寫死了

小筆記
如果你的接口地址里面帶有 `http/https` 前綴的絕對地址, 那么你選運行環(huán)境的時候,環(huán)境會無效,運行的時候根據(jù)你寫死的地址運行
如果你的接口地址是相對地址`/api/v1/login/`, 那么可以選不同環(huán)境運行

對照api的yaml文件

name: login case1
request:
url: http://127.0.0.1:8000/api/v1/login/
method: POST
headers:
Content-Type: application/json
User-Agent: python-requests/2.18.4
json:
username: test
password: 123456
validate:
- eq: [status_code, 200]

參數(shù)解釋:

request 參數(shù)

request 參數(shù)對應 requests 庫里面的 Request 對象

import requests

s = requests.Session()
r = s.request()

可以點進去request 看源碼可以支持哪些參數(shù)

def request(
self,
method,
url,
params=None,
data=None,
headers=None,
cookies=None,
files=None,
auth=None,
timeout=None,
allow_redirects=True,
proxies=None,
hooks=None,
stream=None,
verify=None,
cert=None,
json=None,
)

創(chuàng)建一個Request

# Create the Request.
req = Request(
method=method.upper(),
url=url,
headers=headers,
files=files,
data=data or {},
json=json,
params=params or {},
auth=auth,
cookies=cookies,
hooks=hooks,
)

如果你對requests有過一些基本的使用,結合上面的源碼,那就很清楚每個參數(shù)是干什么的了

參數(shù)解釋:

前面的登錄接口示例

這里headers 參數(shù)可以不用加,type類型選了json,會自動在請求頭部加上application/json 格式 (這是requests框架自帶的功能)

變量的聲明與使用

賬號和密碼不能寫死了,因為可能在其它地方會用其它賬號登錄,需要復用API接口

變量的聲明格式$varname,需注意的是變量必須放在字符串中聲明,如上圖。

聲明變量后,必須要設置變量,不然用例轉換不通過

這里的變量值給個初始值,方便調試通過

Validate 校驗結果

接下來就是斷言的使用,當用例運行完之后,我們需要添加檢查點,校驗返回結果。
API 層我們不需要加業(yè)務邏輯校驗,只做接口基本校驗,這里的接口還不涉及業(yè)務邏輯,簡單的判斷是200 OK就行了,或者校驗結果返回的是JSON格式

Response 對象

那么校驗的時候,有哪些對象可以使用呢?如果check地方寫的語法不正確,那么會有以下報錯

available response attributes: status_code, cookies, elapsed, headers, content, text, json, encoding, ok, reason, url.

可以接收的 response 對象
status_code:狀態(tài)碼200, 404 等
cookies:cookies
elapsed:響應時間
headers:返回頭部
content:響應內容的bytes數(shù)據(jù)
text:響應內容的文本數(shù)據(jù)
json:響應內容的json數(shù)據(jù)
encoding:響應編碼
ok:返回bool值,狀態(tài)碼小于400為True
reason:狀態(tài)碼對應的描述,如:OK, NOT FOUND等
url: 完整url地址

如果你對requests框架熟悉,那么跟Response定義是一一對應的

class Response:
"""The :class:`Response <Response>` object, which contains a
server's response to an HTTP request.
"""

__attrs__ = [
"_content",
"status_code",
"headers",
"url",
"history",
"encoding",
"reason",
"cookies",
"elapsed",
"request",
]

提取返回結果

我們在提取返回結果的時候,經(jīng)常會用到

  • status_code  響應狀態(tài)碼

  • body或content   響應body內容

  • headers 響應頭部

比如我們響應的頭部內容

返回的頭部以字典方式返回

{ "Date": "Thu, 20 Oct 2022 14:21:09 GMT", "Server": "WSGIServer/0.2 CPython/3.6.8", "Content-Type": "application/json", "Allow": "POST, OPTIONS", "X-Frame-Options": "SAMEORIGIN", "Content-Length": "110", "Vary": "Cookie", "Set-Cookie": "sessionid=in28ks6u92r7bvreklxcysdkuhklff3w; expires=Thu, 03-Nov-2022 14:21:09 GMT; HttpOnly; Max-Age=1209600; Path=/" }

于是可以通過點的方式取值

headers.Content-Type

這樣就能取到對應的值”application/json”

如果是需要提取body內容

{ 
"code": 0,
"msg": "login success!",
"username": "test1",
"token": "eeefb5f49316d9ecba367473fae6130b595cb7be"
}

于是可以這樣取值

body.code
body.token

注意:并不是所有的token取值,都是body.token, 還有一種情況,token可能嵌套在data里面

{ 
"code": 0,
"msg": "login success!",
"data": {
"token": "eeefb5f49316d9ecba367473fae6130b595cb7be" ,
"username": "test1"
}
}

那么token取值是這樣的

body.data.token
小筆記
1.body 和 content 通用
2.字典取值body.key名稱,如果有嵌套:body.key.嵌套的key, 繼續(xù)點取值

學到這里一些基礎的概念差不多的都掌握了,還有一些復雜場景:hooks 和extrat 功能沒有講到。

《上海悠悠接口自動化平臺》體驗地址與使用教程

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
moco接口測試
如何用tep完成增刪改查接口自動化
python爬蟲04 | 長江后浪推前浪,Reuqests庫把urllib庫拍在沙灘上
【JS 逆向百例】HN政務服務網(wǎng)登錄逆向,驗證碼形同虛設
requests庫快速入門(參照官方文檔翻譯整理)
[接口測試_B] 14 pytest+requests實戰(zhàn)-參數(shù)化
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服