1. 程式人生 > 程式設計 >Pytest引數化parametrize使用程式碼例項

Pytest引數化parametrize使用程式碼例項

這篇文章主要介紹了Pytest引數化parametrize使用程式碼例項,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

在測試用例的前面加上:

@pytest.mark.parametrize("引數名",列表資料)

引數名:用來接收每一項資料,並作為測試用例的引數。

列表資料:一組測試資料。

示例程式碼:

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,c):
  res = a + b
  assert res == c

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

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。