上次咱們提到了unittest單元測試框架,運用單元測試框架unittest進行編寫測試用例框架
可是遇到了一個問題,就是難道我一個測試點中有多個測試用例,我要每個都要去編寫一條測試用例嘛?這實在是太複雜了,人工成本過高了函數
通過一系列的掙扎,最開始是使用的for循環實現的,這個也能夠,可是過於累贅,而後採用了第三方庫:ddt,簡單介紹下ddt是怎麼使用的單元測試
安裝方式:測試
pip install ddtspa
使用方式:code
這個我就直接貼代碼了吧,文字說明不太容易表達,測試數據仍是引用以前的測試數據吧,,,blog
import unittest from ddt import ddt, data def A(a, b): # 測試函數 return a+b @ddt class TestA(unittest.TestCase): # 測試數據 test_data = [{"a": 3, "b": 5, "expect": 8}, {"a": 3, "b": 3, "expect": 6}] @data(*test_data) def test_right(self, data_info): # 測試用例 self.assertEqual(data_info["expect"], A(data_info["a"], data_info["b"]), "用例執行失敗") if __name__ == '__main__': # 執行全部的用例 unittest.main()
從上面的代碼能夠看出,咱們在test_data裏面是存在兩條數據,那麼按照以前的咱們應該在下面寫兩個測試方法的,如今咱們只寫了一個測試方法就OK; ,咱們看下執行的結果是什麼吧接口
測試結果中顯示咱們跑了兩條測試用例,說明咱們用ddt已經解決了咱們數據驅動的問題了。ip
下面用圖示說明下具體的it
關於ddt數據驅動,暫時就這麼多,相信運用到接口測試中也是足夠了