python測試架構--nose

來源:互聯網
上載者:User

標籤:

 

  最近再瀏覽Python自動化測試架構,之前接觸過unittest,看了篇文章,發現nose貌似更牛逼一些,於是安裝試了試,分享一下心得。    nose 項目是於 2005 年發布的,也就是 py.test 改名後的一年。它是由 Jason Pellerin 編寫的,支援與 py.test 相同的測試習慣做法,但是這個包更容易安裝和維護。儘管 py.test 在某些方面有所進步,目前也很容易安裝,但是 nose 仍然保持了易用性方面的聲譽。    首先安裝nose,當然前提是已經安裝部署完成python,從網上擷取程式包,https://pypi.python.org/pypi/nose/選擇相應的版本下載,tar -zxvf nosexxxx,python setup.py insatll 當然也可以用easy_install測試nose是否安裝成功,輸入nosetests,有提示之類就證明哦了。   編寫一個簡單的測試案例 在命令列下執行nosetests 即可。 注意:測試代碼儲存的檔案必須以Test或test開頭.然後在該目錄下執行nosetests     setup和teardownsetup:在測試案例開始時被執行teardown:在測試案例結束後被執行    nose在檔案中如果找到函數setup, setup_module, setUp 或者setUpModule等,那麼會在該模組的所有測試執行之前執行該函數。如果找到函數 teardown,tearDown, teardown_module或者 tearDownModule 等,那麼會在該模組所有的測試執行完之後執行該函數。     對於上面的代碼,nose實際的執行過程是這樣的:  setUp()->Testfunc1()->Testfunc2()->tearDown()        nose常用參數nosetests  –v :debug模式,看到具體執行情況,推薦大家執行時用這個選項nose會捕獲標準輸出,調試的print代碼預設不會列印。nosetest  –s 可開啟output輸出,否則全部通過時不列印stdout。預設nosetests會執行所有的case,若想單獨只執行一個case,執行nosetest --tests 後跟要測試的檔案(nosetests後面直接跟檔案名稱,其實也可以直接運行該case)。nosetests --collect-only -v :不運行程式,只是搜集並輸出各個case的名稱nosetests -x  :一旦case失敗立即停止,不執行後續case-w ,指定一個目錄運行測試。目錄可以是相對路徑或絕對路徑 上述檔案執行 nosetests -s 即可看到調用順序。
     nose測試單個檔案或用例nosetests命令後加檔案路徑來運行單個.py測試檔案或指定運行某個case,檔案名稱支援正則匹配nosetest a.py                運行test_a.py中所有用例nosetest test_a.py:testfunc    運行test_a.py中的testfunc用例 程式碼涵蓋範圍統計,要用到coverage,詳細的打算再寫一篇blog。nosetests--with-coverage執行即可   單側的目錄建議:   這個我還沒太高明吧,感覺大致意思就是要對應放置?maybe。     nose的外掛程式:   http://nose-plugins.jottit.com/ 

python測試架構--nose

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.