資料介紹
最近出現(xiàn)了行業(yè)級的 Python 測試框架,這意味著 Python 測試可以編寫得更簡潔、更統(tǒng)一,能夠產(chǎn)生更好的結(jié)果報(bào)告。本文介紹比較先進(jìn)的測試框架并討論它們的基本特性。
Python 測試領(lǐng)域的蠻荒時(shí)代結(jié)束了。僅僅在幾年前,幾乎每個(gè)用 Python 構(gòu)建的項(xiàng)目在編寫和運(yùn)行測試方面都采用自己的習(xí)慣做法。但是現(xiàn)在,這種混亂局面終于要結(jié)束了。社區(qū)中已經(jīng)出現(xiàn)了幾種出色的測試解決方案,它們?yōu)閿?shù)百個(gè)流行的項(xiàng)目的測試套件提供約定和通用標(biāo)準(zhǔn)。
本文是 三篇系列文章 的第一篇,本系列要介紹新的測試框架。在本文中,將介紹三種流行的測試框架,討論新一代工具鼓勵(lì)的簡單測試風(fēng)格。第二篇文章發(fā)現(xiàn)和選擇測試 討論更大的問題:這些框架如何自動(dòng)地發(fā)現(xiàn)和分類項(xiàng)目的測試。最后一篇文章用 Python 測試框架生成測試報(bào)告 討論這些框架為查看測試結(jié)果提供的強(qiáng)大特性。
通過學(xué)習(xí)這三種框架的通用習(xí)慣做法,您不但可以更好地理解其他程序員編寫的 Python 包,還可以為自己的應(yīng)用程序構(gòu)建優(yōu)雅、強(qiáng)大的測試套件。
有三種 Python 測試框架是目前使用最為廣泛的。下面按時(shí)間次序簡要介紹它們:
zope.testing
通常,從事 Zope 項(xiàng)目的開發(fā)人員就像是早期的拓荒者。他們需要以一種統(tǒng)一的方式在大型代碼基上發(fā)現(xiàn)和運(yùn)行測試,為此開發(fā)了 zope.testing 包,這個(gè)包現(xiàn)在仍然得到廣泛使用。
zope.testing 包只支持 unittest 和 doctest 等傳統(tǒng) Python 測試風(fēng)格,而不支持更現(xiàn)代的框架支持的簡化風(fēng)格。但是,它提供一個(gè)強(qiáng)大的分層系統(tǒng),在這種系統(tǒng)中包含測試的目錄可以依賴于通用的設(shè)置代碼,設(shè)置代碼為層(而不是每個(gè)測試)創(chuàng)建一個(gè)運(yùn)行測試所需的環(huán)境。
py.test
2004 年,Holger Krekel 把他的 std 包改名為 ‘py’,因?yàn)樵瓉淼拿Q常常與 Python 附帶的標(biāo)準(zhǔn)庫混淆。盡管這個(gè)包包含另外幾個(gè)子包,但是現(xiàn)在最著名的部分只有它的 py.test 框架。
py.test 框架建立了 Python 測試的新標(biāo)準(zhǔn),目前許多開發(fā)人員都采用這種標(biāo)準(zhǔn)。它為編寫測試提供了優(yōu)雅的符合 Python 風(fēng)格的習(xí)慣做法,讓開發(fā)人員能夠以非常緊湊的風(fēng)格編寫測試套件。
nose
nose 項(xiàng)目是于 2005 年發(fā)布的,也就是 py.test 改名后的一年。它是由 Jason Pellerin 編寫的,支持與 py.test 相同的測試習(xí)慣做法,但是這個(gè)包更容易安裝和維護(hù)。盡管 py.test 在某些方面有所進(jìn)步,目前也很容易安裝,但是 nose 仍然保持了易用性方面的聲譽(yù)。
在 Python 大會(huì)上,常常會(huì)看到開發(fā)人員穿著黑色 T 恤衫,上面印著 nosetests 命令,后面是表示測試成功的點(diǎn)號。有意思的是,隨著 nose 的發(fā)展,在項(xiàng)目郵件列表上常常看到開發(fā)人員向項(xiàng)目負(fù)責(zé)人詢問他們的項(xiàng)目什么時(shí)候可以轉(zhuǎn)換到 nose。
在這三種框架中,nose 看起來會(huì)成為標(biāo)準(zhǔn),py.test 的用戶群比較小,但是很忠誠,zope.testing 只在基于 Zope 框架的項(xiàng)目中受歡迎。但是,這三種框架都得到積極的維護(hù),各有一些獨(dú)特的特性。建議您了解它們的特性和差異,選擇適合自己項(xiàng)目的框架。
測試演化
py.test 框架接受普通的 Python 函數(shù)作為測試,而不要求把測試放在更大更重型的測試類中,這開啟了 Python 測試的新時(shí)代。因?yàn)?nose 框架支持相同的習(xí)慣做法,所以這些模式很可能越來越流行。
- 負(fù)載瞬態(tài)測試簡化說明
- 什么時(shí)候需要進(jìn)行網(wǎng)絡(luò)線纜測試?
- DDR測試項(xiàng)總結(jié)及詳細(xì)步驟 27次下載
- 基于多層感知機(jī)模型的自適應(yīng)簡化率預(yù)測 8次下載
- IGBT短路測試方法的介紹課件下載 45次下載
- 基于機(jī)器學(xué)習(xí)的內(nèi)存泄漏測試腳本預(yù)測方法 30次下載
- 使用數(shù)字隔離器簡化醫(yī)療和工業(yè)應(yīng)用中的USB隔離資料下載
- 如何正確進(jìn)行LED基波功率因數(shù)測試?資料下載
- 一種新的導(dǎo)向式灰盒模糊測試方法 7次下載
- 使用Matlab庫函數(shù)進(jìn)行快速傅立葉變換測試的方法詳細(xì)說明 3次下載
- 如何進(jìn)行單片機(jī)測試程序免費(fèi)下載
- 計(jì)數(shù)器邏輯功能測試實(shí)驗(yàn)報(bào)告 15次下載
- 簡化DisplayPort調(diào)試驗(yàn)證和一致性測試
- 用位置敏感傳感器進(jìn)行位移測試的技術(shù)研究
- 運(yùn)算放大器表征的簡化測試規(guī)定--A Simplified T
- 如何高效使用IPX8防水測試設(shè)備進(jìn)行測試 154次閱讀
- 使用Python進(jìn)行Ping測試 568次閱讀
- 晶振溫度特性測試通常會(huì)進(jìn)行高達(dá)150℃的測試 575次閱讀
- 如何進(jìn)行RF PA Ruggedness的測試和評估呢? 2704次閱讀
- 通過編程實(shí)現(xiàn)測試和測量的自動(dòng)化 1269次閱讀
- 使用Netropy廣域網(wǎng)模擬器測試簡化SD-WAN測試 570次閱讀
- CRUD如何簡化開發(fā) 532次閱讀
- 基于新型MEMS開關(guān)提高SoC測試能力及系統(tǒng)產(chǎn)出 564次閱讀
- 用于滲透測試中對40x頁面進(jìn)行bypass測試的掃描工具 672次閱讀
- 滲透測試工程師精簡化字典 748次閱讀
- 如何使用DudeSuite進(jìn)行滲透測試工作 1686次閱讀
- 射頻標(biāo)識RFID如何進(jìn)行測試 4011次閱讀
- 計(jì)算機(jī)輔助EMC診斷簡化電子產(chǎn)品EMC測試 894次閱讀
- 伺服電機(jī)如何進(jìn)行快速的測試? 1w次閱讀
- 簡化浪涌測試技術(shù)介紹[圖] 8299次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1490次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費(fèi)
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 8基于單片機(jī)的紅外風(fēng)扇遙控
- 0.23 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評論