<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                phpt文件用于PHP的自動化測試,這是PHP用自己來測試自己的測試數據用例文件。測試腳本通過執行PHP源碼根目錄下的run-tests.php,讀取phpt文件執行測試。 phpt文件包含 TEST,FILE,EXPECT 等多個段落的文件。在各個段落中,TEST、FILE、EXPECT是基本的段落,每個測試腳本都必須至少包括這三個段落。其中: - TEST段可以用來填寫測試用例的名字。 - FILE段是一個 PHP 腳本實現的測試用例。 - EXPECT段則是測試用例的期待值。 在這三個基本段落之外,還有多個段落,如作為用例輸入的GET、POST、COOKIE等,此類字段最終會賦值給$env變量。比如,cookie存放在$env['HTTP_COOKIE'],$env變量將作為用例中腳本的執行環境。一些主要段落說明如下表所示: PHP測試腳本中的段落說明 | :段落名 | 填充內容 | 備注 | |-----|-----|-----| | TEST | 測試腳本語句 | 必填段落 | | FILE | 測試腳本語句 | 必填段落。用PHP語言書寫的腳本語句。其執行的結果將與 EXPECT* 段的期待結果做對比。 | | ARGS | FILE 段的輸入參數 | 選填段落 | | SKIPIF | 跳過這個測試的條件 | 選填段落 | | POST | 傳入測試腳本的 POST 變量 | 選填段落。如果使用POST段,建議配合使用SKIPIF段 | | GET | 傳入測試腳本的 GET 變量 | 選填段落。如果使用GET段,建議配合使用SKIPIF段。 | | POST_RAW | 傳入測試腳本的POST內容的原生值 | 選填段落。比如在做文件上傳測試時就需要使用此字段來模擬HTTP的POST請求。 | | COOKIE | 傳入測試腳本的COOKIE的值 | 選填段落。最常見的是將PHPSESSID的值傳入。 | | INI | 應用于測試腳本的 ini 設置 | 選填段落。例如 foo=bar 。其值可通過函數 ini_get(string name_entry) 獲得。 | | ENV | 應用于測試腳本的環境設置 | 選填段落。例如做gzip測試,則需要設置環境HTTP_ACCEPT_ENCODING=gzip。 | | EXPECT | 測試腳本的預期結果 相當于測試文件的結果 | 必填段落 | | EXPECTF | 測試腳本的預期結果 | 選填段落。可用函數 sscanf() 中的格式表達預期結果 EXPECT 段的變體 | | EXPECTREGEX | 測試腳本的正則預期結果 | 選填段落。以正則的方式包含多個預期結果,是預期結果EXPECT段的一種變體。 | | EXPECTHEADERS | 測試腳本的預期頭部內容 | 選填段落.測試腳本期待HTTP頭部返回,是預期結果EXPECT段的另一種格式。驗證過程中會按頭部的字段一一比對測試,比如zlib擴展中,如果開啟zlib.output_compression, 則在EXPECTHEADERS中包含Content-Encoding: gzip作為預期結果。 | phpt文件只是用例文件,它還需要一個控制器來調用這些文件,以實現整個測試過程。PHP的測試控制器文件是源碼根目錄下的run-tests.php文件。此文件的作用是根據傳入的參數,分析用例相關數據,執行測試過程。其大概過程如下: 1. 分析輸入的命令行,根據參數配置相關參數,初始化各種信息。 1. 分析用例輸入參數,獲取需要執行的用例文件列表。PHP支持指定單文件用例執行,支持多文件用例執行,支持* .phpt多用例執行,支持* .phpt簡化版本_多用例執行(相當于_.phpt)。 1. 遍歷用例文件列表,執行每一個用例。對于每個用例,PHP會具體解析測試腳本中各個段落的含義,清除所有上次測試的記錄與設置將準備此次的測試環境,并把各種中間文件和日志文件準備好,然后用環境變量 TEST_PHP_EXECUTABLE 指定的 PHP 可執行對象運行實際的測試語句。最后將運行后的結果和測試腳本中的預期結果(EXPECT*段)進行比較,如果比較結果一致,則測試通過;如果不一致,則測試失敗,最后將結果信息一一記錄到用戶設置的日志文件中。 1. 生成測試結果。 這僅僅是執行的過程,除此之外,還有若干準備和清理工作,如,對上次測試遺留下的環境的清理,本次測試所必須的環境變量的讀取與設置,對測試參數的解析,測試腳本名的解析,各種輸出文件的準備等等 以測試腳本/tests/basic/001.phpt為例: --TEST-- Trivial "Hello World" test --FILE-- <?php echo "Hello World"?> --EXPECT-- Hello World 這個用例腳本只包含必填的三項。測試控制器會執行--FILE--下面的PHP文件,如果最終的輸出是--EXPECT--所期望的結果則表示這個測試通過,如果不一致,則測試不通過,最終這個用例的測試結果會匯總會所有的測試結果集中。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看