欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

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

phpt測(cè)試文件說(shuō)明

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

10年積累的成都做網(wǎng)站、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(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段可以用來(lái)填寫(xiě)測(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)境。一些主要段落說(shuō)明如下表所示:

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

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

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

  1. 分析輸入的命令行,根據(jù)參數(shù)配置相關(guān)參數(shù),初始化各種信息。
  2. 分析用例輸入?yún)?shù),獲取需要執(zhí)行的用例文件列表。PHP支持指定單文件用例執(zhí)行,支持多文件用例執(zhí)行, 支持 .phpt多用例執(zhí)行,支持 .phpt簡(jiǎn)化版本多用例執(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ǔ)句。 最后將運(yùn)行后的結(jié)果和測(cè)試腳本中的預(yù)期結(jié)果(EXPECT*段)進(jìn)行比較,如果比較結(jié)果一致,則測(cè)試通過(guò);如果不一致,則測(cè)試失敗, 最后將結(jié)果信息一一記錄到用戶設(shè)置的日志文件中。
  4. 生成測(cè)試結(jié)果。

這僅僅是執(zhí)行的過(guò)程,除此之外,還有若干準(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--
<?php echo "Hello World"?>
--EXPECT--
Hello World

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

分享題目:phpt文件內(nèi)容解析
網(wǎng)頁(yè)地址:http://chinadenli.net/article10/dsoihdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、標(biāo)簽優(yōu)化、品牌網(wǎng)站制作、網(wǎng)站維護(hù)、電子商務(wù)網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)