python驅動DDT框架應用--實戰舉例
阿新 • • 發佈:2019-02-05
步驟:
建立一個python file—ddttest
引入ddt
更新ddt
File-Settings-雙擊pip-搜尋框輸入:ddt
例項講解:
傳入一個引數:
import unittest
from ddt import ddt,data,unpack
@ddt
class MyTestCase(unittest.TestCase):
#下面的1,2,3代表我們傳入的引數,每次傳入一個值
@data(1,2,3)
#定義一個value用於接收我們傳入的引數
def test_something(self,value) :
#對於傳入的引數與2進行對比,相等就通過,否則就是不同過
self.assertEqual(value, 2)
if __name__ == '__main__':
unittest.main()
日誌資訊:
傳入兩個引數:
import unittest
from ddt import ddt,data,unpack
@ddt
class MyTestCase(unittest.TestCase):
#下面的(1,2)(2,3)代表我們傳入的引數,每次傳入兩個值
@data((1,2),(2,3))
#告訴我們的測試用例傳入的是兩個以上的值
@unpack
#定義兩個引數value用於接收我們傳入的引數
def test_something(self,value1,value2):
print value1,value2
#對於傳入的第一個引數+1與第二個引數進行對比,相等就通過,否則就是不通過
self.assertEqual(value2, value1+1)
if __name__ == '__main__':
unittest.main()
報錯:–未在開頭加入#encoding:utf-8
解決:加入即可:
#usr/bin/python
#encoding:utf-8
import unittest
from ddt import ddt,data,unpack
@ddt
class MyTestCase(unittest.TestCase):
#下面的(1,2)(2,3)代表我們傳入的引數,每次傳入兩個值
@data((1,2),(2,3))
#告訴我們的測試用例傳入的是兩個以上的值
@unpack
#定義兩個引數value用於接收我們傳入的引數
def test_something(self,value1,value2):
print value1,value2
#對於傳入的第一個引數+1與第二個引數進行對比,相等就通過,否則就是不通過
self.assertEqual(value2, value1+1)
if __name__ == '__main__':
unittest.main()