python自動化基礎(參數化)


一、創建加法類

#定義一個數學加法類
class Mathmethod():
    def add(self,a,b):
        return(a+b)
    def sub(self,a,b):
        return(a-b)

 二、創建測試用例,並進行參數化

import unittest
from HTMLTestRunner import HTMLTestRunner
from requesttest.math1.Mathmethod import Mathmethod  # 引入Mathmethod模塊
#import HTMLTestRunnerNew

class TestMathmethod(unittest.TestCase):
    #超繼承(既有父類的特性,又有自己的新特性)
    #子類有跟父類相同的特性,就會覆蓋父類的特性  重寫
    def __init__(self,methodName,a,b,excepted):
        super(TestMathmethod,self).__init__(methodName)#超繼承父類的初始化函數
        self.a=a
        self.b=b
        self.excepted=excepted

    def test_method_add(self):
        res=Mathmethod().add(self.a,self.b)
        print('兩個數值相加結果是',res)
        self.assertEqual(self.excepted,res)

 

三、生成測試報告

(1)用列表的形式引入測試數據並生成測試報告

import unittest
from HTMLTestRunner import HTMLTestRunner
from requesttest.math1.TestMathmethod import TestMathmethod

test_data=[[0,0,0],[1,2,3],[-1,5,4],[1,-3,-2],[-1,-1,-2]]#列表嵌套,二位列表
testunit=unittest.TestSuite()#生成單元測試流程
for data in test_data:
    testunit.addTest(TestMathmethod("test_method_add",data[0],data[1],data[2]))#加載測試用例
fp=open('D:\\test\\unittest1.html','wb')#創建測試報告,以寫的方式存入某個路徑
runner=HTMLTestRunner(
    stream=fp,
    title="加法測試",
    description="用例執行情況:"
    )
runner.run(testunit)
fp.close()

 

(2)用讀取TXT文本的方式傳入測試數據,形成測試報告

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM