亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Python 測(cè)試框架unittest和pytest的優(yōu)劣

瀏覽:3日期:2022-07-10 08:05:10

一、Unittest

Unittest是Python標(biāo)準(zhǔn)庫(kù)中自帶的單元測(cè)試框架,Unittest有時(shí)候也被稱為PyUnit,就像JUnit是Java語言的標(biāo)準(zhǔn)單元測(cè)試框架一樣,Unittest則是Python語言的標(biāo)準(zhǔn)單元測(cè)試框架。

Unittest支持自動(dòng)化測(cè)試,測(cè)試用例的初始化、關(guān)閉和測(cè)試用例的聚合等功能,它有一個(gè)很重要的特性:它是通過類(class)的方式,將測(cè)試用例組織在一起。

示例:

Python 測(cè)試框架unittest和pytest的優(yōu)劣

運(yùn)行結(jié)果

Python 測(cè)試框架unittest和pytest的優(yōu)劣

注:unittest有一個(gè)關(guān)聯(lián)模塊unittest2,但unittest2僅適用于Python 2.4-2.6。這是由于從Python 2.7開始,unittest增加一些新的特性。為了在老的版本中支持這些特性,所以提供了unittest2這個(gè)庫(kù)。但對(duì)于Python 2.7及之后的版本,unittest是唯一的。本次示例中使用的為python2.7。

二、Pytest

Pytest是Python的另一個(gè)第三方單元測(cè)試庫(kù)。它的目的是讓單元測(cè)試變得更容易,并且也能擴(kuò)展到支持應(yīng)用層面復(fù)雜的功能測(cè)試。

pytest的特性有:

支持用簡(jiǎn)單的assert語句實(shí)現(xiàn)豐富的斷言,無需復(fù)雜的self.assert*函數(shù) 自動(dòng)識(shí)別測(cè)試模塊和測(cè)試函數(shù) 模塊化夾具用以管理各類測(cè)試資源 對(duì) unittest 完全兼容,對(duì) nose基本兼容 支持Python3和PyPy3 豐富的插件生態(tài),已有300多個(gè)各式各樣的插件,社區(qū)繁榮

示例:

Python 測(cè)試框架unittest和pytest的優(yōu)劣

執(zhí)行結(jié)果:

Python 測(cè)試框架unittest和pytest的優(yōu)劣

三、Unittest vs Pytest

unittest pytest 用例編寫規(guī)則 1)測(cè)試文件必須先import unittest

2)測(cè)試類必須繼承unittest.TestCase

3)測(cè)試方法必須以“test_”開頭

4)測(cè)試類必須要有unittest.main()方法

1)測(cè)試文件名必須以“test_”開頭或者'_test'結(jié)尾(如:test_ab.py)

2)測(cè)試方法必須以“test_”開頭

3)測(cè)試類命名以'Test'開頭

用例分類執(zhí)行 默認(rèn)執(zhí)行全部用例,也可以通過加載testsuit,執(zhí)行部分用例 可以通過@pytest.mark來標(biāo)記類和方法,pytest.main加入?yún)?shù)('-m')可以只運(yùn)行標(biāo)記的類和方法 用例前置和后置 提供了setUp/tearDown,只能針對(duì)所有用例 pytest中的fixture顯然更加靈活。可以任意自定義方法函數(shù),只要加上@pytest.fixture()這個(gè)裝飾器,那么被裝飾的方法就可以被使用 參數(shù)化 需依賴ddt庫(kù) 使用@pytest.mark.parametrize裝飾器 斷言 很多斷言格式(assertEqual、assertIn、assertTrue、assertFalse) 只有assert一個(gè)表達(dá)式,用起來比較方便 報(bào)告 使用HTMLTestRunnerNew庫(kù) 有pytest-HTML、allure插件 失敗重跑 無此功能 pytest支持用例執(zhí)行失敗重跑,pytest-rerunfailures插件

總結(jié):

總體來說,unittest用例格式復(fù)雜,兼容性無,插件少,二次開發(fā)方便。pytest更加方便快捷,用例格式簡(jiǎn)單,可以執(zhí)行unittest風(fēng)格的測(cè)試用例,無須修改unittest用例的任何代碼,有較好的兼容性。pytest插件豐富,比如flask插件,可用于用例出錯(cuò)重跑,還有xdist插件,可用于設(shè)備并行執(zhí)行,效率更高。

以上就是Python 測(cè)試框架unittest和pytest的優(yōu)劣的詳細(xì)內(nèi)容,更多關(guān)于Python unittest和pytest的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产日韩一区在线精品欧美玲 | 在线成h人视频网站免费观看 | 午夜精品久久久久久99热7777 | 最新亚洲精品国自产在线观看 | 亚洲第一区在线 | 日本国产免费一区不卡在线 | 婷婷综合影院 | 国产精品理论片在线观看 | 激情五月色婷婷色综合 | 中文在线播放 | 成人满18在线观看网站免费 | 中文字幕第一页亚洲 | 激情婷婷色 | 国产美女视频爽爽爽 | 午夜伦情电午夜伦情影院 | 欧美在线 | 亚洲 | 亚洲高清国产一线久久 | 黄色片视频在线播放 | 久久视频6免费观看视频精品 | 视频在线观看一区二区 | 成年女人免费观看 | 真人毛片免费观看视频 | 色婷婷久久合月综 | 欧美日韩中文一区二区三区 | 在线观看精品国内福利视频 | 综合亚洲色图 | 黄色在线视频观看 | 久久精品中文字幕第一页 | 亚洲综合无码一区二区 | 日本美女黄色一级片 | 亚洲第三十七页 | 亚洲综合视频在线观看 | 综合一区| 男女爱爱视频在线观看 | 俄罗斯14一18处交 | 亚久久伊人精品青青草原2020 | 国产激情一区二区三区在线观看 | 亚洲欧美在线中文字幕不卡 | 黄免费视频| 亚洲日本人成中文字幕 | 一级特黄a大片免费 |