函數(shù)testmod()和testfile()提供了一個(gè)簡(jiǎn)單的界面,文檔測(cè)試,應(yīng)該是足夠了最基本的用途。有關(guān)這兩個(gè)函數(shù)的不太正式的介紹,請(qǐng)參見(jiàn)簡(jiǎn)單用法:檢查文檔字符串和簡(jiǎn)單用法中的示例:檢查文本文件中的示例。
doctest.testfile(filename[, module_relative][, name][, package][, globs][, verbose][, report][, optionflags][, extraglobs][, raise_on_error][, parser][, encoding])
除文件名以外的所有參數(shù)都是可選的,并應(yīng)以關(guān)鍵字形式指定。
在名為filename的文件中測(cè)試示例。返回(failure_count, test_count)。
可選參數(shù)module_relative指定應(yīng)如何解釋文件名:
可選參數(shù)名稱(chēng)給出測(cè)試的名稱(chēng); 默認(rèn)情況下,或者None,os.path.basename(filename)被使用。
可選參數(shù)包是一個(gè)Python包或一個(gè)Python包的名稱(chēng),其目錄應(yīng)該用作模塊相關(guān)文件名的基本目錄。如果未指定包,則調(diào)用模塊的目錄將用作模塊相關(guān)文件名的基本目錄。如果module_relative是指定包,那是錯(cuò)誤的。False
可選參數(shù)globs在執(zhí)行示例時(shí)給出了一個(gè)用作全局變量的字典。這個(gè)詞典的一個(gè)新的淺拷貝是為doctest創(chuàng)建的,所以它的例子從一個(gè)干凈的石板開(kāi)始。默認(rèn)情況下,或者如果None使用新的空字典。
可選參數(shù)extraglobs給出了一個(gè)合并到用于執(zhí)行示例的全局變量中的字典。這適用于dict.update():如果globs和extraglobs具有共同的鍵,則extraglobs中的關(guān)聯(lián)值出現(xiàn)在組合字典中。默認(rèn)情況下,或者如果None,不使用額外的全局變量。這是一個(gè)允許doctests參數(shù)化的高級(jí)功能。例如,可以為基類(lèi)編寫(xiě)一個(gè)doctest,使用該類(lèi)的通用名稱(chēng),然后通過(guò)傳遞將泛型名稱(chēng)映射到要測(cè)試的子類(lèi)的extraglobs字典來(lái)測(cè)試任意數(shù)量的子類(lèi)。
可選參數(shù)詳細(xì)信息如果為true,則會(huì)打印大量?jī)?nèi)容,如果為false,則僅打印失敗; 默認(rèn)情況下,或者如果None,當(dāng)且僅當(dāng)'-v'在時(shí)才是sys.argv。
可選的參數(shù)報(bào)告在最后打印摘要時(shí)為真,否則在最后不打印任何內(nèi)容。在詳細(xì)模式下,摘要是詳細(xì)的,否則摘要非常簡(jiǎn)短(實(shí)際上,如果所有測(cè)試都通過(guò),則為空)。
可選參數(shù)optionflags或一起選項(xiàng)標(biāo)志。請(qǐng)參見(jiàn)選項(xiàng)標(biāo)志部分。
可選參數(shù)raise_on_error默認(rèn)為false。如果為true,則在例子中發(fā)生第一次失敗或意外異常時(shí)引發(fā)異常。這樣可以對(duì)故障進(jìn)行事后調(diào)試。默認(rèn)行為是繼續(xù)運(yùn)行示例。
可選參數(shù)解析器指定DocTestParser應(yīng)該用于從文件中提取測(cè)試的一個(gè)(或子類(lèi))。它默認(rèn)為一個(gè)普通的解析器(即,DocTestParser())。
可選的參數(shù)編碼指定應(yīng)該用于將文件轉(zhuǎn)換為unicode的編碼。
2.4版本中的新功能。
在版本2.5中更改:添加了參數(shù)編碼。
doctest.testmod([m][, name][, globs][, verbose][, report][, optionflags][, extraglobs][, raise_on_error][, exclude_empty])
所有參數(shù)都是可選的,除m外的所有參數(shù)都應(yīng)以關(guān)鍵字形式指定。
在從m開(kāi)始可以訪問(wèn)的函數(shù)和類(lèi)中的docstrings中的測(cè)試示例(或者_(dá)_main__如果m沒(méi)有提供或者是None,則為module ),以m.__doc__。開(kāi)頭。
還有可以從字典中獲得的測(cè)試?yán)觤.__test__,如果它存在與否None。m.__test__將名稱(chēng)(字符串)映射到函數(shù),類(lèi)和字符串; 函數(shù)和類(lèi)docstrings搜索的例子; 字符串被直接搜索,就好像它們是docstrings一樣。
僅搜索附加到屬于模塊m的對(duì)象的文檔字符串。
返回(failure_count, test_count)。
可選參數(shù)名稱(chēng)給出模塊的名稱(chēng); 默認(rèn)情況下,或者None,m.__name__被使用。
可選參數(shù)exclude_empty默認(rèn)為false。如果屬實(shí),則沒(méi)有找到doctests的對(duì)象將被排除在考慮之外。默認(rèn)值是向后兼容的黑客,使代碼仍然使用doctest.master.summarize()連同testmod()繼續(xù)得到輸出,沒(méi)有測(cè)試對(duì)象。新構(gòu)造函數(shù)的exclude_empty參數(shù)DocTestFinder默認(rèn)為true。
可選參數(shù)extraglobs,verbose,report,optionflags,raise_on_error和globs與testfile()上述函數(shù)相同,只是globs默認(rèn)為m.__dict__。
在版本2.3中更改:添加了參數(shù)optionflags。
在版本2.4中更改:添加了參數(shù)extraglobs,raise_on_error和exclude_empty。
在版本2.5中更改:可選參數(shù)isprivate,在2.4中棄用,已被刪除。
doctest.run_docstring_examples(f, globs[, verbose][, name][, compileflags][, optionflags])
與對(duì)象f相關(guān)的測(cè)試?yán)? 例如,f可以是字符串,模塊,函數(shù)或類(lèi)對(duì)象。
字典參數(shù)glob的淺拷貝用于執(zhí)行上下文。
失敗消息中使用可選參數(shù)名稱(chēng),缺省值為"NoName"。
如果可選參數(shù)verbose為true,則即使沒(méi)有失敗,也會(huì)生成輸出。默認(rèn)情況下,僅在發(fā)生示例故障時(shí)才會(huì)生成輸出。
可選參數(shù)compileflags給出了運(yùn)行示例時(shí)應(yīng)由Python編譯器使用的一組標(biāo)志。默認(rèn)情況下,或者如果None,推導(dǎo)的標(biāo)志對(duì)應(yīng)于在globs中找到的一組未來(lái)特征。
可選參數(shù)optionflags與testfile()上面的函數(shù)一樣。
更多建議: