真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

phpt文件內(nèi)容解析

phpt測(cè)試文件說明

phpt文件用于PHP的自動(dòng)化測(cè)試,這是PHP用自己來測(cè)試自己的測(cè)試數(shù)據(jù)用例文件。 測(cè)試腳本通過執(zhí)行PHP源碼根目錄下的run-tests.php,讀取phpt文件執(zhí)行測(cè)試。

10年積累的成都做網(wǎng)站、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有石鼓免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

phpt文件包含 TEST,F(xiàn)ILE,EXPECT 等多個(gè)段落的文件。在各個(gè)段落中,TEST、FILE、EXPECT是基本的段落, 每個(gè)測(cè)試腳本都必須至少包括這三個(gè)段落。其中:

  • TEST段可以用來填寫測(cè)試用例的名字。
  • FILE段是一個(gè) PHP 腳本實(shí)現(xiàn)的測(cè)試用例。
  • EXPECT段則是測(cè)試用例的期待值。

在這三個(gè)基本段落之外,還有多個(gè)段落,如作為用例輸入的GET、POST、COOKIE等,此類字段最終會(huì)賦值給\(env變量。 比如,cookie存放在\)env['HTTP_COOKIE'],$env變量將作為用例中腳本的執(zhí)行環(huán)境。一些主要段落說明如下表所示:

PHP測(cè)試腳本中的段落說明

:段落名 填充內(nèi)容 備注
TEST 測(cè)試腳本語句 必填段落
FILE 測(cè)試腳本語句 必填段落。用PHP語言書寫的腳本語句。其執(zhí)行的結(jié)果將與 EXPECT* 段的期待結(jié)果做對(duì)比。
ARGS FILE 段的輸入?yún)?shù) 選填段落
SKIPIF 跳過這個(gè)測(cè)試的條件 選填段落
POST 傳入測(cè)試腳本的 POST 變量 選填段落。如果使用POST段,建議配合使用SKIPIF段
GET 傳入測(cè)試腳本的 GET 變量 選填段落。如果使用GET段,建議配合使用SKIPIF段。
POST_RAW 傳入測(cè)試腳本的POST內(nèi)容的原生值 選填段落。比如在做文件上傳測(cè)試時(shí)就需要使用此字段來模擬HTTP的POST請(qǐng)求。
COOKIE 傳入測(cè)試腳本的COOKIE的值 選填段落。最常見的是將PHPSESSID的值傳入。
INI 應(yīng)用于測(cè)試腳本的 ini 設(shè)置 選填段落。例如 foo=bar 。其值可通過函數(shù) ini_get(string name_entry) 獲得。
ENV 應(yīng)用于測(cè)試腳本的環(huán)境設(shè)置 選填段落。例如做gzip測(cè)試,則需要設(shè)置環(huán)境HTTP_ACCEPT_ENCODING=gzip。
EXPECT 測(cè)試腳本的預(yù)期結(jié)果 相當(dāng)于測(cè)試文件的結(jié)果 必填段落
EXPECTF 測(cè)試腳本的預(yù)期結(jié)果 選填段落??捎煤瘮?shù) sscanf() 中的格式表達(dá)預(yù)期結(jié)果 EXPECT 段的變體
EXPECTREGEX 測(cè)試腳本的正則預(yù)期結(jié)果 選填段落。以正則的方式包含多個(gè)預(yù)期結(jié)果,是預(yù)期結(jié)果EXPECT段的一種變體。
EXPECTHEADERS 測(cè)試腳本的預(yù)期頭部內(nèi)容 選填段落.測(cè)試腳本期待HTTP頭部返回,是預(yù)期結(jié)果EXPECT段的另一種格式。驗(yàn)證過程中會(huì)按頭部的字段一一比對(duì)測(cè)試,比如zlib擴(kuò)展中,如果開啟zlib.output_compression, 則在EXPECTHEADERS中包含Content-Encoding: gzip作為預(yù)期結(jié)果。

phpt文件只是用例文件,它還需要一個(gè)控制器來調(diào)用這些文件,以實(shí)現(xiàn)整個(gè)測(cè)試過程。 PHP的測(cè)試控制器文件是源碼根目錄下的run-tests.php文件。此文件的作用是根據(jù)傳入的參數(shù),分析用例相關(guān)數(shù)據(jù),執(zhí)行測(cè)試過程。 其大概過程如下:

  1. 分析輸入的命令行,根據(jù)參數(shù)配置相關(guān)參數(shù),初始化各種信息。
  2. 分析用例輸入?yún)?shù),獲取需要執(zhí)行的用例文件列表。PHP支持指定單文件用例執(zhí)行,支持多文件用例執(zhí)行, 支持 .phpt多用例執(zhí)行,支持 .phpt簡化版本多用例執(zhí)行(相當(dāng)于.phpt)。
  3. 遍歷用例文件列表,執(zhí)行每一個(gè)用例。對(duì)于每個(gè)用例,PHP會(huì)具體解析測(cè)試腳本中各個(gè)段落的含義, 清除所有上次測(cè)試的記錄與設(shè)置將準(zhǔn)備此次的測(cè)試環(huán)境,并把各種中間文件和日志文件準(zhǔn)備好, 然后用環(huán)境變量 TEST_PHP_EXECUTABLE 指定的 PHP 可執(zhí)行對(duì)象運(yùn)行實(shí)際的測(cè)試語句。 最后將運(yùn)行后的結(jié)果和測(cè)試腳本中的預(yù)期結(jié)果(EXPECT*段)進(jìn)行比較,如果比較結(jié)果一致,則測(cè)試通過;如果不一致,則測(cè)試失敗, 最后將結(jié)果信息一一記錄到用戶設(shè)置的日志文件中。
  4. 生成測(cè)試結(jié)果。

這僅僅是執(zhí)行的過程,除此之外,還有若干準(zhǔn)備和清理工作,如,對(duì)上次測(cè)試遺留下的環(huán)境的清理, 本次測(cè)試所必須的環(huán)境變量的讀取與設(shè)置,對(duì)測(cè)試參數(shù)的解析,測(cè)試腳本名的解析,各種輸出文件的準(zhǔn)備等等

以測(cè)試腳本/tests/basic/001.phpt為例:

[php]
--TEST--
Trivial "Hello World" test
--FILE--

--EXPECT--
Hello World

這個(gè)用例腳本只包含必填的三項(xiàng)。測(cè)試控制器會(huì)執(zhí)行--FILE--下面的PHP文件, 如果最終的輸出是--EXPECT--所期望的結(jié)果則表示這個(gè)測(cè)試通過,如果不一致,則測(cè)試不通過, 最終這個(gè)用例的測(cè)試結(jié)果會(huì)匯總會(huì)所有的測(cè)試結(jié)果集中。


文章標(biāo)題:phpt文件內(nèi)容解析
標(biāo)題來源:http://weahome.cn/article/dsoihdo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部