在實際工作中,為了便於維護,對於環境的切換和配置,通常不會使用硬編碼的形式完成。在之前文章《多環境下的介面測試》中,已經介紹了如何將環境的切換作為乙個可配置的選項。本文會把這部分內容進行重構,使用資料驅動的方式完成多環境的配置。
參考《多環境下的介面測試》,將環境配置部分改為資料驅動的模式:
**如下:
#把host修改為ip,並附加host header
env=
,"default"
:"dev"
}data[
"url"]=
str(data[
"url"])
.replace(
"docker.testing-studio.com"
, env[
"docker.testing-studio.com"
][env[
"default"]]
)data[
"headers"][
"host"]=
"docker.testing-studio.com"
依然以 yaml 為示例,將所有的環境配置資訊放到env.yml
檔案中。如果怕出錯,可以先使用yaml.safe_dump(env)
將 dict 格式的**轉換為 yaml。
如下所示,列印出來的,就是成功轉換 yaml 格式的配置資訊:
def
test_send
(self)
: env=
,"default"
:"dev"
} yaml2 = yaml.safe_dump(env)
print(""
)print
(yaml2)
將列印出來的內容貼上到 env.yml 檔案中:
docker.testing-studio.com:
dev:
"127.0.0.1"
test:
"1.1.1.2"
level:
4default:
"dev"
將環境準備中的**稍作修改,把env
變數從乙個典型 dict 改為使用yaml.safe_load
讀取env.yml
:
# 把host修改為ip,並附加host header
env = yaml.safe_load(
open
("./env.yml"))
data[
"url"]=
str(data[
"url"])
.\ replace(
"docker.testing-studio.com"
, env[
"docker.testing-studio.com"
][env[
"default"]]
)data[
"headers"][
"host"]=
"docker.testing-studio.com"
如此一來,就可以實現使用資料驅動的方式,通過修改env.yml
檔案來直接修改配置資訊。 介面測試框架實戰 六 配置的資料驅動
python 測試開發實戰高階 課程,4 個月挑戰 bat 大廠年薪 50w offer,文末 在實際工作中,為了便於維護,對於環境的切換和配置,通常不會使用硬編碼的形式完成。在之前文章 多環境下的介面測試 中,已經介紹了如何將環境的切換作為乙個可配置的選項。本文會把這部分內容進行重構,使用資料驅動...
介面測試框架實戰 五 測試資料的資料驅動
本文節選自霍格沃玆測試學院內部教材,文末鏈結高階學習!資料驅動就是資料的改變從而驅動自動化測試的執行,最終引起測試結果的改變。簡單來說,就是引數化的應用。資料量小的測試用例可以使用 的引數化來實現資料驅動,資料量大的情況下建議使用一種結構化的檔案 例如 yaml,json 等 來對資料進行儲存,然後...
介面測試框架實戰 五 測試資料的資料驅動
本文節選自霍格沃玆測試學院內部教材,高階學習,文末 資料驅動就是資料的改變從而驅動自動化測試的執行,最終引起測試結果的改變。簡單來說,就是引數化的應用。資料量小的測試用例可以使用 的引數化來實現資料驅動,資料量大的情況下建議使用一種結構化的檔案 例如 yaml,json 等 來對資料進行儲存,然後在...