python中的ddt用法

2022-09-10 00:15:36 字數 2171 閱讀 9060

**自:

一般進行介面測試時,每個介面的傳參都不止一種情況,一般會考慮正向、逆向等多種組合。所以在測試乙個介面時通常會編寫多條case,而這些case除了傳參不同外,其實並沒什麼區別。

這個時候就可以利用ddt來管理測試資料,提高**復用率。

※但要注意:正向和逆向的要分開寫※

安裝:pip install ddt

四種模式:第一步引入的裝飾器@ddt;匯入資料的@data;拆分資料的@unpack;匯入外部資料的@file_data

1、讀取元組資料

#一定要和單元測試框架一起用

import unittest,os

from ddt import ddt,data,unpack,file_data

'''no.1單組元素'''

@ddt

class testwork(unittest.testcase):

@data(1,2,3)

def test_01(self,value): #value用來接收data的資料

print(value)

if __name__ == '__main__':

unittest.main()

結果:=>1

2 3

'''no.2多組未分解元素'''

@ddt

class testwork(unittest.testcase):

@data((1,2,3),(4,5,6))

def test_01(self,value):

print(value)

if __name__ == '__main__':

unittest.main()

結果:=>(1, 2, 3)

(4, 5, 6)

'''no.3多組分解元素'''

@ddt

class testwork(unittest.testcase):

@data((1,2,3),(4,5,6))

@unpack

一般進行介面測試時,每個介面的傳參都不止一種情況,一般會考慮正向、逆向等多種組合。所以在測試乙個介面時通常會編寫多條case,而這些case除了傳參不同外,其實並沒什麼區別。

這個時候就可以利用ddt來管理測試資料,提高**復用率。

※但要注意:正向和逆向的要分開寫※

安裝:pip install ddt

四種模式:第一步引入的裝飾器@ddt;匯入資料的@data;拆分資料的@unpack;匯入外部資料的@file_data

1、讀取元組資料

#一定要和單元測試框架一起用

import unittest,os

from ddt import ddt,data,unpack,file_data

'''no.1單組元素'''

@ddt

class testwork(unittest.testcase):

@data(1,2,3)

def test_01(self,value): #value用來接收data的資料

print(value)

if __name__ == '__main__':

unittest.main()

結果:=>1

2 3

'''no.2多組未分解元素'''

@ddt

class testwork(unittest.testcase):

@data((1,2,3),(4,5,6))

def test_01(self,value):

print(value)

if __name__ == '__main__':

unittest.main()

結果:=>(1, 2, 3)

(4, 5, 6)

'''no.3多組分解元素'''

@ddt

class testwork(unittest.testcase):

@data((1,2,3),(4,5,6))

@unpack

python中,ddt模組的使用

ddt 資料驅動 應用場景 我們做介面自動化的時候,同乙個業務場景下,會有多組資料的錄入的情況,這個時候如果每錄入一組資料就要寫乙個測試類的話,太過繁瑣,也不符合測試思想。這個時候資料驅動思想 ddt模組 就有了用武之地。安裝pip install ddt 基礎 1.ddt獲取到的資料為多個字典的l...

python 資料驅動 ddt

一。初始ddt 1.安裝 pip install ddt 2.匯入ddt import ddt 3.初步使用 注意 需要和unittest一起使用 cases expected expected ddt.ddt class test math unittest.testcase ddt.data c...

python 處理資料之 ddt

from ddt import ddt,unpack,data import unittest import json a 1,2 b 4 5 6,7 c now value d e mes ddt class test unittest.testcase def setup self print ...