Python nose單元測試框架的安裝與使用

本文介紹了Python nose單元測試框架的安裝與使用 漓概,分享給大家副砍,具體如下:

安裝(Python2下安裝)

pip install nose

原理與命名規(guī)則

Nose會自動查找源文件疯攒、目錄或者包中的測試用例副瀑,符合正則表達(dá)式(?:^|[\b_\.%s-])[Tt]est晰搀,以及TestCase的子類都會被識別并執(zhí)行蕉拢。

例如:我們可以將python腳本文件名以“_test”結(jié)尾或包含“_test_”蛀蜜,方法名以“_test”結(jié)尾刻两。

使用方法

查看所有nose相關(guān)命令:

nosetests -h

執(zhí)行并捕獲輸出:

nosetests -s

查看nose的運行信息和調(diào)試信息:

nosetests -v9

輸出xml結(jié)果報告:

nosetests --with-xunit

支持測試方法傳參:

1)安裝:需要下載插件“nose_ittr”:

pip install nose_ittr

2)腳本中使用示例:

# -*- coding: utf-8 -*-

import os

from nose.tools import nottest,istest

from nose_ittr import IttrMultiplier, ittr

curr_dir = os.path.dirname(os.path.abspath(__file__))

class TestCheckChannels(object):

? __metaclass__ = IttrMultiplier

? '''

? ? 測試方法傳入兩個參數(shù)

? ? 參數(shù)一:channels_txt_name

? ? 參數(shù)二:check_list_txt_name

? ? 使用方法:通過“self.參數(shù)名”進(jìn)行調(diào)用

? '''

? @istest

? @ittr(channels_txt_name=["channels.txt"],check_list_txt_name=["check_list.txt"])

? def test_check_channels(self):

? ? channels_txt_path = os.path.join(curr_dir,self.channels_txt_name)

? ? check_list_txt_path = os.path.join(curr_dir,self.check_list_txt_name)

? ? the_channels = []

? ? with open(channels_txt_path) as channels:

? ? ? for line in channels.readlines():

? ? ? ? line = line.strip()

? ? ? ? if line != '':

? ? ? ? ? the_channels.append(line)

? ? with open(check_list_txt_path) as check_list:

? ? ? check_items = check_list.readlines()

? ? ? for check_item in check_items:

? ? ? ? if check_item.strip() in the_channels:

? ? ? ? ? pass

? ? ? ? elif check_item=='\n':

? ? ? ? ? pass

? ? ? ? else:

? ? ? ? ? print check_item

3)執(zhí)行示例:

nosetests --with-html-output --html-out-file=result1.html -v --with-setup-ittr

以上執(zhí)行將輸出html結(jié)果報告,但是需要先安裝插件:

1)安裝:

需要下載插件滴某,在解壓縮后在命令行中cd到該目錄下:

python setup.py install

通過命令行安裝:

pip install nosehtmloutput-2

pip install nose-html-reporting

2)在待測路徑打開cmd使用命令如下磅摹,就可以執(zhí)行測試并生成測試結(jié)果html文件了:

nosetests --with-html-output --html-out-file=result1.html

工具nose.tools的使用:

1)測試腳本中引入:from nose.tools import nottest,istest;

2)不測試的方法:方法名上加修飾器@nottest霎奢;

3)指定為測試方法:方法名上加修飾器@istest(方法名無需符合命名規(guī)則)户誓;

4)查看要執(zhí)行的用例列表:nosetests --collect-only -v。

測試項目

腳本示例

from nose.tools import nottest,istest

from nose.tools import assert_equal

class TestClass:

? def test_one(self):

? ? x = "this"

? ? assert 'h' in x

? def test_two(self):

? ? x = "hello"

? ? assert hasattr(x, 'check')

? @nottest

? def test_three(self):

? ? assert True

? @istest

? def xxxxx(self):

? ? assert True

class test_haha():

? def setUp(self):

? ? print("============test class setup==============")

? def teardown(self):

? ? print("============test class teardown==============")

? def test_xxx(self):

? ? print "test_xxx"

? ? assert_equal(9, 9)

? def test_kkk(self):

? ? print "test_kkk"

? ? assert_equal(1, 1)

測試執(zhí)行

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末幕侠,一起剝皮案震驚了整個濱河市帝美,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌晤硕,老刑警劉巖悼潭,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件庇忌,死亡現(xiàn)場離奇詭異,居然都是意外死亡舰褪,警方通過查閱死者的電腦和手機(jī)皆疹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來占拍,“玉大人略就,你說我怎么就攤上這事』尉疲” “怎么了表牢?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長贝次。 經(jīng)常有香客問我初茶,道長,這世上最難降的妖魔是什么浊闪? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任恼布,我火速辦了婚禮,結(jié)果婚禮上搁宾,老公的妹妹穿的比我還像新娘折汞。我一直安慰自己,他們只是感情好盖腿,可當(dāng)我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布爽待。 她就那樣靜靜地躺著,像睡著了一般翩腐。 火紅的嫁衣襯著肌膚如雪鸟款。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天茂卦,我揣著相機(jī)與錄音何什,去河邊找鬼。 笑死等龙,一個胖子當(dāng)著我的面吹牛处渣,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蛛砰,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼罐栈,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了泥畅?” 一聲冷哼從身側(cè)響起荠诬,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后柑贞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體方椎,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年凌外,在試婚紗的時候發(fā)現(xiàn)自己被綠了辩尊。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片涛浙。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡康辑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出轿亮,到底是詐尸還是另有隱情疮薇,我是刑警寧澤,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布我注,位于F島的核電站按咒,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏但骨。R本人自食惡果不足惜励七,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望奔缠。 院中可真熱鬧掠抬,春花似錦、人聲如沸校哎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽闷哆。三九已至腰奋,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間抱怔,已是汗流浹背劣坊。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留屈留,地道東北人讼稚。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像绕沈,于是被迫代替她去往敵國和親锐想。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 本文鏈接:https://blog.csdn.net/thesby/article/details/5126443...
    dopami閱讀 1,099評論 0 0
  • Python 四五事 介紹 Python 相關(guān)工具乍狐,工作流程和測試框架赠摇。 發(fā)布于 2014.1.19最后更新 20...
    hzyido閱讀 65,031評論 0 4
  • 今天下午,悠貝親子閱讀陽江區(qū)域的館長約見了我,她這次來是想拓展陽春區(qū)域加盟商或者合伙人藕帜。我?guī)е鴮W(xué)習(xí)的心態(tài)應(yīng)約了烫罩,除...
    塔牌外語Penny老師閱讀 10,872評論 0 3
  • 今天周日,初冬的陽光總是那樣好的不得了洽故,空氣里雖然帶著一絲凜冽贝攒,當(dāng)陽光暖的仿佛要把人全身都化了。我在自習(xí)室里已經(jīng)待...
    肆玖兮閱讀 372評論 0 0
  • 1.《眼中的風(fēng)景》 初夏傍晚動蕩的熱風(fēng) 秋涼夜空靜謐的彎月 你凝視我深情的眼眸 2.《只要今生》 前世时甚,縱橫疆場史...
    牛牛小小黃閱讀 1,369評論 24 46