自動化測試ddt的使用

2021-09-25 23:29:49 字數 1619 閱讀 4578

(資料驅動測試)允許您通過使用不同的測試資料執行乙個測試用例,並使其顯示為多個測試用例。

1.  ddt

類裝飾器,用於testcase的子類test方法。

2. 1  data

方法裝飾器(資料),包含與要提供給測試的值一樣多的引數。

2. 2  file_data

方法裝飾器(資料),將從json或yaml檔案載入測試資料。

只有以「.yml」和「.yaml」結尾的檔案才會作為yaml檔案載入。所有其他檔案都作為json檔案載入。

3. unpack

額外的裝飾器,自動將元組和列表解壓縮為多個引數,並將字典解壓縮為多個關鍵字引數。

import unittest

from ddt import ddt,data,unpack

#需要測試的**

def add(a):

return (a+1)

#設定值

data1=[,,,]

#使用ddt對被測試**進行批量測試

@ddt

class testddt(unittest.testcase):

@data(*data1)

def test_add(self,data1):

res=add(data1["a"])

assert res==data1["b"]

if __name__=='__main__':

unittest.main()

import unittest

from ddt import ddt,data,unpack

def add2(a,b):

return (a+b)

data2=[[,2],[,3]]

@ddt

class testddt(unittest.testcase):

@data(*data2)

@unpack

def test_add2(self, x,y):

res = add2(x["a"],x["b"])

print(res)

assert res == y

if __name__=='__main__':

unittest.main()

test_data.json

,

"test2":

}

testcase.py 

import unittest

from ddt import ddt,file_data

def add(a,b):

return a+b

@ddt

class testcase(unittest.testcase):

@file_data('test_data.json')

def test_add1(self,a,b):

r=add(a,b)

print(r)

if __name__=='__main__':

unittest.main()

自動化測試之 ddt 驅動 json 檔案

一 上篇文章我們使用了 unittest ddt 驅動 excel 檔案做資料驅動測試,本篇文章我們採用 unittest ddt 驅動 json 檔案來實現資料驅動測試,話不多說上原始碼。執行結果如下 執行結果如下 ran 3 tests in 0.004s evan 123456 lvan 12...

自動化測試之 ddt 驅動 excel 檔案

一 ddt 用途 二 安裝 ddt 三 ddt 模組組成 四 示例 from ddt import ddt,data import unittest ddt class mytestddt unittest.testcase def setup self print start data 2,4 使...

python介面自動化 DDT資料驅動測試

如果想從頭學起介面自動化測試,可以去看看這個系列的文章哦!ddt date driver test 所謂資料驅動測試,簡單來說就是由資料的改變從而驅動自動化測試的執行,最終引起測試結果的改變。通過使用資料驅動測試的方法,可以在需要驗證多組資料測試場景中,使用外部資料來源實現對輸入輸出與期望值的引數化...