使用yaml檔案驅動多環境下的介面測試
1.二次封裝requests
#原始碼py
import requests
class
inte***ce
:def
send
(self, data:
dict):
res = requests.request(data[
"method"
], data[
"url"])
print
(res)
#測試的py
deftest_send()
: data =
a=inte***ce(
) a.send(data)
2.進一步把寫死的ip提取成變數定義
#原始碼py
import requests
class
inte***ce
: env =
}def
send
(self, data:
dict):
data[
"url"]=
str(data[
"url"])
.replace(
"envaddress"
,self.env[
"diff_envadress"
][self.env[
"default"]]
) res = requests.request(data[
"method"
], data[
"url"])
print
(res)
#測試py
from
file
.inte***ce import inte***ce
deftest_send()
: data =
a=inte***ce(
) a.send(data)
from
file
.inte***ce import inte***ce
3.把資料提取成yaml,使用yaml選擇環境位址
env.yml
default
: env1
diff_envadress
:env1
: 127.0.0.1
env2
: 127.0.0.2
#原始碼py
import requests
import yaml
class
inte***ce
:with
open
("env.yml"
)as f:
env=yaml.safe_load(f)
defsend
(self, data:
dict):
data[
"url"]=
str(data[
"url"])
.replace(
"envaddress"
,self.env[
"diff_envadress"
][self.env[
"default"]]
)return requests.request(data[
"method"
], data[
"url"])
#測試py
class
testcase()
: data =
deftest_send
(self)
: a=inte***ce(
) src=a.send(self.data)
print
(json.loads(base64.b64decode(src.content)
))
python資料驅動 yaml檔案的呼叫
1 塊 hello goodbye first name 聶思偉 second name 唐玉峰 third name 張贏 cookietype 1 datatype 0 url user login method post detail 登入 data username 張三 password ...
python處理yaml檔案的簡單使用
yaml和json一樣是一種資料呈現格式 本文重點講解使用pyyaml處理yaml檔案 建立乙個為learn.yaml的檔案,字尾名為yaml或者yam,表示的就為yaml檔案 介面測試用例 login id 1 title 正常登陸 url method post json username zh...
多網絡卡的環境下的發包
伺服器上面有兩張網絡卡分別連線電信和聯通網路,要求軟體在接到a請求時,使用電信網絡卡訪問網路,接到b請求時,使用聯通網絡卡訪問網路,必須能多執行緒處理請求。具體的解決方法如下 在多網絡卡的環境下,只要在訪問外網時,指定使用那乙個網絡卡ip來對外發包,就可以非常簡單的實現一開始所說的功能了 設定對外訪...