1. 程式人生 > 實用技巧 >UnitTest 引數化ddt,paramunittest

UnitTest 引數化ddt,paramunittest

UnitTest 引數化ddt,paramunittest

ddt

import unittest
import ddt
# from ddt import ddt,data,unpack,file_data

@ddt.ddt
class Testwork(unittest.TestCase):
    @ddt.data([1,2],{'username':'4','password':'6'})
    # @ddt.data((1,2),(3,4))
    # @ddt.file_data(*login_xls)
    @ddt.unpack
    def test_01(self,username,password):
        print(username,'******',password)
    def test_02(self):
        print('02')
if __name__ == '__main__':
    unittest.main()
    # 執行結果為3條用例

paramunittest

import unittest
import paramunittest

# @paramunittest.parametrized(*login_xls)
@paramunittest.parametrized(('1',"2"),{'username':'4','password':'6'})
class Testwork(unittest.TestCase):
    # 注意這裡接受引數的時候,必須要定義setParameters這個方法,並且只能是這個名稱。括號後面的引數分別接受傳入的引數名稱。前面定義的是字典,那引數就跟前面字典的key保持一致
    def setParameters(self,username,password):
        self.username = username
        self.password = password
    def test_01(self):
        print(self.username,'******',self.password)
    def test_02(self):
        print('02')

if __name__ == '__main__':
    unittest.main()
    # 執行結果為4條用例