python unittest基礎用法

2021-09-24 05:26:53 字數 2597 閱讀 5478

unittest 執行例項

基礎用法

import unittest  #匯入unittest模組

defcalc

(a,b)

:#被測的方法

return a+b

class

testcale

(unittest.testcase)

:#必須要整合unittest的testcase方法

deftest1

(self)

: result = cale(1,

2)self.assertequal(

3,result,msg=

'計算結果與預期結果不一致'

)def

test2

(self)

: result = cale(-1

,1) assertequal(

0,result)

#判斷實際結果和預期結果是否相等,如果相等用例通過

if __main__():

'''一下三種呼叫方式根據不同需求'''

'''執行case但是不會產生測試報告'''

unittest.main(

)'''產生測試報告htmltestrnner'''

import htmltestrunner

suite = unittest.makesuite(testcale)

#新增測試套件

f =open

('report.html'

,'wb'

)#以二進位制形式寫入report.html裡

runner = htmltestrunner.htmltestrunner(f,title=

'xx測試報告'

,description=

'測試報告詳細類容'

) runner.run(suite)

'''產生測試報告beautifulreport'''

import beautifulreport

suite = makesuite(testcale)

runner = beautifulreport.beautifulreport(suite)

runner.report(

'xx測試報告'

,'bfreport.html'

)

執行某個檔案裡面所有的caese

import beautifulreport,unittest

suite=unittest. defaulttestloader.discover(

'all_case'

,'*.py'

)#查詢all_case路徑下所有檔案字尾為.py的檔案

runner=beautifulreport.beautifulreport(suite)

#新增測試集合

runner.report(

'測試報告','testreport.html'

)#執行並產生名為testreport.html,測試case為測試報告的測試case

跳過某個case

class

testc

(unittest.testcase)

:def

test1

(selef)

: self.assertequal(3,

3)@unittest.skip(

'無條件跳過這條case'

)def

test2

(self)

: self.asserequal(2,

3)deftest3

(self)

: self.asserequal(2,

1)@unittest.skipif(

2>1,

'判斷條件為ture,條做這條case'

)def

test5

(self)

: self.asserequal(2,

1)@unittest.skipunless(

2<1,

'判斷條件為false,條做這條case'

)def

test5

(self)

: self.asserequal(2,

1)

實現資料驅動

pip install parameterized

import parameterized

class

test

(unittest.testcase)

: @parameterized.parameterized.expand([[

'xiaohei'

,'123456'][

'zhangsan'

,'2324324']]

)def

test1

(self,name,password)

: result = login(name,password)

self.assertequal(

200,result.get(

'code'

))

Python unittest環境搭建和基礎使用

用python搭建自動化測試框架,需要組織用例以及測試執行,大部分推薦的是unittest。現在搭建python介面框架用的也是這個,隨著了解,也有其他的框架,有時間再多去學習,保持持續學習哦 希望對大家有幫助 unittest是python自帶的單元測試框,可以用來作自動化測試框架的用例組織執行框...

Python unittest學習筆記

python標準庫中的模組unittest提供了 測試工具。單元測試用於核實函式的某個方面沒問題 測試用例是一組單元測試,這些單元測試一起核實函式在各種情形下的行為都符合要求。良好的測試用例考慮到了函式可能收到的各種輸入,包含針對所有這些情形的測試。全覆蓋式測試用例包含一整套單元測試,涵蓋了各種可能...

python unittest 之mock學習筆記

mock的詳細用法 英文介紹 本文先對函式的mock方法進行演示。假設有檔案fun1和fun2,fun2中的函式呼叫了fun1中的函式。利用mock方法生成fun1中函式的乙個fake返回值,在此基礎上,對fun2中的函式進行單元測試。如下 fun1檔案 usr bin env python cod...