PostgreSQL TAP 測(cè)試

2021-09-01 18:11 更新

很多測(cè)試,特別是src/bin下面的客戶端程序測(cè)試使用 Perl 的 TAP 工具并且用Perl測(cè)試程序prove運(yùn)行。你可以通過 設(shè)置make變量PROVE_FLAGSprove傳遞命令行選項(xiàng),例如:

make -C src/bin check PROVE_FLAGS='--timer'

詳見prove的手冊(cè)頁。

make變量PROVE_TESTS可被用來定義一個(gè)空格分隔的列表,其中是調(diào)用prove來運(yùn)行的指定測(cè)試子集的路徑,這些測(cè)試子集將取代默認(rèn)的t/*.pl,并且這些路徑是相對(duì)于Makefile的。例如:

make check PROVE_TESTS='t/001_test1.pl t/003_test3.pl'

TAP測(cè)試需要 Perl 模塊IPC::Run。 這個(gè)模塊可以從 CPAN 或者一個(gè)操作系統(tǒng)包得到。

一般來說,如果你執(zhí)行make installcheck,TAP測(cè)試將測(cè)試之前安裝的安裝樹中的可執(zhí)行文件; 或者如果你執(zhí)行make check,將從當(dāng)前源構(gòu)建新的本地安裝樹。 在這兩種情況下,他們將初始化本地實(shí)例(數(shù)據(jù)目錄),并在其中暫時(shí)運(yùn)行服務(wù)器。 其中一些測(cè)試運(yùn)行多個(gè)服務(wù)器。 因此,這些測(cè)試可能相當(dāng)耗費(fèi)資源。

重要的是要認(rèn)識(shí)到TAP測(cè)試將啟動(dòng)測(cè)試服務(wù)器,即使你說make installcheck;這與傳統(tǒng)的非TAP 測(cè)試基礎(chǔ)架構(gòu)不同,在這種情況下它期望使用已經(jīng)運(yùn)行的測(cè)試服務(wù)器。 某些 PostgreSQL 子目錄包含傳統(tǒng)樣式和 TAP 樣式測(cè)試,這意味著make installcheck將產(chǎn)生來自臨時(shí)服務(wù)器和已運(yùn)行測(cè)試服務(wù)器的混合結(jié)果。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)