這篇文章將為大家詳細講解有關(guān)python中doctest怎么嵌入源碼,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
10年積累的網(wǎng)站設(shè)計制作、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站策劃后付款的網(wǎng)站建設(shè)流程,更有萬榮免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
下面的代碼只有一個函數(shù),里面嵌入了兩個doctest測試用例,文件名為naruto.py:
''' 這個例子展示如何在源碼中嵌入doctest用例。 '>>>' 開頭的行就是doctest測試用例。 不帶 '>>>' 的行就是測試用例的輸出。 如果實際運行的結(jié)果與期望的結(jié)果不一致,就標(biāo)記為測試失敗。 ''' def multiply(a, b): """ >>> multiply(4, 3) 12 >>> multiply('a', 3) 'aaa' """ return a * b if __name__=='__main__': import doctest doctest.testmod(verbose=True)
有兩個地方可以放doctest測試用例,一個位置是模塊的最開頭,另一個位置是函數(shù)聲明語句的下一行(就像上面的例子這樣)。除此之外的其它地方不能放,放了也不會執(zhí)行。
verbose參數(shù),如果設(shè)置為True則在執(zhí)行測試的時候會輸出詳細信息。默認(rèn)是False,表示運行測試時,只有失敗的用例會輸出詳細信息,成功的測試用例不會輸出任何信息。
將上面提到的文件放在D盤(或者其他你覺得方便的目錄),打開cmd命令行,切換到naruto.py所在的目錄(我的在D盤),輸入下面代碼:
python naruto.py
輸出結(jié)果為:
Trying: multiply(4, 3) Expecting: 12 ok Trying: multiply('a', 3) Expecting: 'aaa' ok 1 items had no tests: __main__ 1 items passed all tests: 2 tests in __main__.multiply 2 tests in 2 items. 2 passed and 0 failed. Test passed.
上面啟動測試的方式是在__main__函數(shù)中調(diào)用了doctest.testmod()方法。
如果__main__函數(shù)有其他用途,不方便調(diào)用doctest.testmod()方法,那么可以用另外一種執(zhí)行測試的方法,在cmd中輸入:
$ python -m doctest naurto.py $ python -m doctest -v naruto.py
關(guān)于python中doctest怎么嵌入源碼就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
當(dāng)前標(biāo)題:python中doctest怎么嵌入源碼
網(wǎng)址分享:http://jinyejixie.com/article24/gpepje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、App設(shè)計、小程序開發(fā)、定制網(wǎng)站、全網(wǎng)營銷推廣、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)