資料驅動測試:
避免編寫重複代碼
資料與測試腳本分離
通過使用資料驅動測試,來驗證多組資料測試場景
通常來說,多用于單元測試和接口測試
Data-Driven Tests(DDT)即資料驅動測試,可以實作不同資料運作同一個測試用例。ddt本質其實就是裝飾器,一組資料一個場景。
ddt子產品包含了一個類的裝飾器ddt和三個個方法的裝飾器:
data:包含多個你想要傳給測試用例的參數,可以為清單、元組、字典等;
file_data:會從json或yaml中加載資料;
unpack:分割元素,如以下示例:
@data([a,d],[c,d])
如果沒有@unpack,那麼[a,b]當成一個參數傳入用例運作
如果有@unpack,那麼[a,b]被分解開,按照用例中的兩個參數傳遞
傳遞整體清單,字典、元組
嵌套清單、元組、字典的整體傳遞方式
unpack 依次傳遞元組
輸出結果:
依次傳遞字典
依次傳遞清單
ddt支援從檔案中加載資料,@file_data()裝飾器會從json或yaml中加載資料。隻有以“.yml” 和 “.yaml” 結尾的檔案被加載為Yaml檔案。所有其他格式檔案都作為json檔案加載,比如txt。
傳遞json資料
test.json檔案

View Code
傳遞多層json檔案

View
傳遞yml資料
yml 需要安裝yml(pip install PyYAML)
test.yml