溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Pytest中使用parametrize

發(fā)布時間:2021-03-20 16:45:25 來源:億速云 閱讀:235 作者:Leah 欄目:開發(fā)技術

本篇文章為大家展示了如何在Pytest中使用parametrize,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

在測試用例的前面加上:

@pytest.mark.parametrize("參數(shù)名",列表數(shù)據(jù))

參數(shù)名:用來接收每一項數(shù)據(jù),并作為測試用例的參數(shù)。

列表數(shù)據(jù):一組測試數(shù)據(jù)。

示例代碼:

import pytest
test_datas = [
  (11, 22, 33),
  (22, 33, 55)
]

datas_dict = [
  {"a": 1, "b": 2, "c": 3},
  {"a": 11, "b": 22, "c": 33},
  {"a": 111, "b": 222, "c": 333},
]

# 方式一:直接寫
@pytest.mark.parametrize("a, b, c", [(1, 2, 3), (4, 5, 9)])
def test_add01(a, b, c):
  res = a + b
  assert res == c

# 方式二:參數(shù)為列表中嵌套元組
@pytest.mark.parametrize("data", test_datas)
def test_add02(data):
  res = data[0] + data[1]
  assert res == data[2]

# 方式三:參數(shù)為列表中嵌套字典
@pytest.mark.parametrize("data", datas_dict)
def test_add03(data):
  res = data["a"] + data["b"]
  assert res == data["c"]

上述內(nèi)容就是如何在Pytest中使用parametrize,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI