日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

excel 两组数据交点_Python 自动化测试(四):数据驱动

發(fā)布時間:2024/10/6 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 excel 两组数据交点_Python 自动化测试(四):数据驱动 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本周測試公開課《Pytest 自動化測試最佳實踐:實用特性與進階技巧》!

在實際的測試工作中,通常需要對多組不同的輸入數(shù)據(jù),進行同樣的測試操作步驟,以驗證我們的軟件質(zhì)量。這種測試,在功能測試中非常耗費人力物力,但是在自動化中,卻比較好實現(xiàn),只要實現(xiàn)了測試操作步驟,然后將多組測試數(shù)據(jù)以數(shù)據(jù)驅(qū)動的形式注入,就可以實現(xiàn)了。

前面文章學習了參數(shù)化,當數(shù)據(jù)量非常大的時候,我們可以將數(shù)據(jù)存放到外部文件中,使用的時候?qū)⑽募械臄?shù)據(jù)讀取出來,方便測試數(shù)據(jù)的管理。數(shù)據(jù)與測試用例分別管理,可以利用外部數(shù)據(jù)源 YAML、JSON、Excel、CSV 管理測試數(shù)據(jù)。

pytest 結(jié)合 YAML

YAML 是一種容易閱讀、適合表示程序語言的數(shù)據(jù)結(jié)構(gòu)、可用于不同程序間交換數(shù)據(jù)、豐富的表達能力和可擴展性、易于使用的語言。通過縮進或符號來表示數(shù)據(jù)類型。

pyyaml 模塊在 Python 中用于處理 YAML 格式數(shù)據(jù),主要使用 yaml.safe_dump() 和 yaml.safe_load() 函數(shù)將 Python 值和 YAML 格式數(shù)據(jù)相互轉(zhuǎn)換。工作中常常使用 YAML 格式的文件存儲測試數(shù)據(jù)。

安裝

pip?install?PyYAML

案例

創(chuàng)建用例文件以及數(shù)據(jù)文件來完成數(shù)據(jù)驅(qū)動的測試案例,創(chuàng)建一個文件夾 testdata,在這個文件夾下創(chuàng)建 data.yml 和 test_yaml.py 文件。

創(chuàng)建 data.yml 文件:

-??-?1??-?2-??-?20??-?30

創(chuàng)建“test_yaml.py”,代碼如下:

import?pytestimport?yaml@pytest.mark.parametrize("a,b",?yaml.safe_load(open("datas.yml",encoding='utf-8')))def?test_foo(a,b):????print(f"a?+?b?=?{a?+?b}")

代碼分析

yaml 文件里定義了列表數(shù)據(jù),通過 open() 方法獲取 data.yml 文件對象,使用 yaml.safe_load() 加載這個文件對象,將 YAML 格式文件轉(zhuǎn)換為 Python 值,分別傳到到用例中生成多條用例分別執(zhí)行。

運行結(jié)果

省略...test_params.py::test_foo[1-2]?test_params.py::test_foo[20-30]?省略...

運行結(jié)果中 [1-2] 和 [20-30] 代碼傳入的兩組參數(shù),分別傳入 test_foo() 用例方法中執(zhí)行,并且分別生成兩條測試結(jié)果。

以上,pytest 組合 YAML 實現(xiàn)數(shù)據(jù)驅(qū)動,YAML 文件作為用例數(shù)據(jù)源,控制測試用例的執(zhí)行,使測試用例數(shù)據(jù)維護更加方便快捷。

(文章來源于霍格沃茲測試學院)

總結(jié)

以上是生活随笔為你收集整理的excel 两组数据交点_Python 自动化测试(四):数据驱动的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。