一、nose的api
二、安裝nose
先用easy_install 安裝 nose,easy_install是乙個很好的python工具,可以方便安裝很多的python程式。python2.6及之後的版本,預設帶easy_install工具。
安裝完easy_install後,在相應版本的scripts目錄下(例如c:/python26/scripts)會有乙個easy_install.exe程式,通過這個就可以安裝其他python包了。在命令列下轉到python的scripts目錄下,執行以下的命令進行安裝:
c:/python26/scripts/easy_install nose
上面的 c:/python26/scripts 需要根據您的python的安裝路徑進行修改。
安完畢後,在c:/python26/scripts下會有乙個nosetests.exe檔案,通過這個exe程式就可以在命令列下執行測試了。最好是把c:/python26/scripts加入環境變數,這樣在其它目錄中可以直接引用nosetests.exe。
二、執行測試
在命令列下,直接執行nosetests(注意要把nosetests.exe所在的目錄加入到環境變數path裡面),它就會自動查詢當前目錄下包含"test"字串的目錄和檔案進行測試。
這樣我們可以把所有測試case放在一起,然後讓測試自己去執行,我們最後看結果就可以了。我們可以指定具體如何輸出結果,也可以指定如何搜尋檔案和資料夾,還可以把測試結果輸入到指定的檔案。
三、編寫測試
(1)待測試的函式 (name.py)
#(2)測試指令碼(test_tests.py)-*- coding: utf-8 -*-
"""file: name.py
"""def
get_name():
return
"test
"
#nose在檔案中如果找到函式setup, setup_module, setup 或者setupmodule等,那麼會在該模組的所有測試執行之前執行該函式。如果找到函式 teardown,teardown, teardown_module或者 teardownmodule 等,那麼會在該模組所有的測試執行完之後執行該函式。-*- coding: utf-8 -*-
from name import
get_name
defsetup():
"start
"def
teardown():
"\nend
"def
test1():
"test success!
"assert get_name() == "
test
"def
test2():
"\ntest fail!
"assert get_name == "
kk"
對於上面的**,nose實際的執行過程是這樣的:
setup()->test1()->test2()->teardown()
(3)執行的結果
四、其他
1. nosetests常用的命令列引數
這裡只重點介紹幾個常用的,其它的引數可以通過nosetests -h進行檢視。
a) -w ,指定乙個目錄執行測試。
b)-s,不捕獲輸出,會讓你的程式裡面的一些命令列上的輸出顯示出來。例如print所輸出的內容。
c)-v,檢視nose的執行資訊和除錯資訊。例如會給出當前正在執行哪個測試。
2. 此檔案的參考:
C C 單元測試工具
做好單元測試,推薦學習國產的單元測試工具單元測試工具visual unit2.2。部分功能 自動生成測試 視覺化編輯測試用例,人工只需建立容易想到的測試用例 自動統計語句 條件 分支 路徑覆蓋 顯示引數 成員變數 返回值等輸入輸出資料 顯示每個用例所執行的 自動畫出邏輯結構圖 顯示邏輯結構圖中任一語...
Junit單元測試工具
1.1作用 junit單元單元測試測試,主要用於對程式進行專業化測試package a junit import org.junit.assert import org.junit.test public class test junit 使用junit專業的判定結果的方法 assert類,斷言類 ...
單元測試工具 winAMS
摘要 論述軟體測試工具winams caseplayer2在嵌入軟體單元測試中的應用。介紹了軟體測試工具的功能 插裝原理 測試環境搭建 覆蓋率測試 測試資料取得等相關技術研究及經驗總結。覆蓋率專家winams源自日本gaio公司,gaio公司創始於1980年,公司早期開發編譯器,隨後開發了基於源 分...