<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 與Travis CI的持續集成 你做到了。 你已經用測試覆蓋你的代碼,現在你可以相信你的代碼。 其實,你不能。 有一天,你會忘記運行測試,部署到生產,并從你的老板得到一個憤怒的電話后。 如果你使用不協調的集成,這不需要發生。 在本教程中,您將學習如何使用Travis CI設置Nette Tester。 配置測試環境 使用Composer安裝依賴項 使用Nette Tester進行運行測試 設置其他服務 TL; DR GitHub集成 ## Travis CI的工作原理 Travis CI(“Travis”)是一種非常受歡迎的服務,用于托管持續集成。 該服務是免費的,并提供您的測試推送到您的存儲庫后自動執行。 它也完全與GitHub集成。 為了配置Travis,您需要將一個名為.travis.yml的文件添加到存儲庫的根目錄。 該文件由本教程后面部分描述的部分組成。 沒有一個部分是強制性的,但是如果我們省略腳本部分,Travis將嘗試運行phpunit。 這些部分按以下順序執行: before_install 安裝 before_script 腳本(必需) after_success或after_failure after_script ## 設置.travis.yml **語言** 首先,您需要告訴Travis為您的項目選擇哪種語言環境。 你可以使用語言:php選項。 您可以指定要對哪些PHP版本執行測試。 不介紹補丁版本告訴Travis使用最新的。 ~~~ language: php php: - 5.3.3 - 5.4 - 5.5 - 5.6 - hhvm ~~~ **環境變量** 您可以指示Travis使用不同的環境變量值執行多個運行。 為此,請添加env鍵。 每個項目符號被理解為一個不同的環境,測試單獨運行。 我們將在文件中使用TESTER_PHP_BIN在HHVM環境中使用-p hhvm選項運行測試器。 ~~~ env: - TESTER_PHP_BIN="php-cgi" - TESTER_PHP_BIN="hhvm" ~~~ 五個php版本和兩個環境變量的組合產生總共10次運行。 **依賴安裝** 為了安裝您的依賴項,請使用安裝部分。 每個項目符號意味著單個命令。 Composer默認安裝您的dev依賴項。 你應該使用--no-interaction,這樣作曲家不會問Travis不能回答的問題。 你還應該使用--prefer-source。 它防止您的測試隨機失敗,如果你運行有限的GitHub API請求。 如果要使用最新的版本,請在before_install節中更新Composer。 ~~~ before_install: - composer self-update install: - composer install --no-interaction --prefer-source ~~~ **構建矩陣** 根據上面的配置,生成構建矩陣。 矩陣包含所有環境設置的組合。 單個組合稱為作業,并單獨運行。 您可以在矩陣部分修改矩陣。 如果要排除作業,請使用排除鍵。 在我們的示例中,我們不想對標準PHP版本使用-p hhvm參數,對HHVM使用-p php-cgi。 ~~~ matrix: exclude: - php: 5.3.3 env: TESTER_PHP_BIN="hhvm" - php: 5.4 env: TESTER_PHP_BIN="hhvm" - php: 5.5 env: TESTER_PHP_BIN="hhvm" - php: 5.6 env: TESTER_PHP_BIN="hhvm" - php: hhvm env: TESTER_PHP_BIN="php-cgi" ~~~ Travis將構建顯示為只有在每個作業通過時才會通過。 但是,您可以定義允許失敗的作業,而不會導致整個構建顯示為失敗。 為此,請聲明allow_failures。 為了我們的目的,我們允許HHVM失敗。 ~~~ matrix: allow_failures: - php: hhvm ~~~ **運行測試** 測試在腳本部分運行,您只需要執行測試。 讓我們假設你的測試在tests /文件夾,你提供自己的php.ini在同一個文件夾。 Additionaly,告訴測試人員顯示有關使用-s選項跳過的測試的信息,并使用-p選項將早期聲明的TESTER_PHP_BIN的值用作PHP二進制。 ~~~ script: - ./vendor/bin/tester -p $TESTER_PHP_BIN -s -c ./tests/php.ini ./tests ~~~ **如果測試失敗** 如果測試失敗,則執行after_failure部分。 測試器在斷言失敗的情況下存儲變量的實際值。 我們將使用此部分來打印實際值。 ~~~ after_failure: # Prints *.actual files content - for i in $(find ./tests -name \*.actual); do echo "--- $i"; cat $i; echo; echo; done ~~~ **設置其他服務:** Travis預裝了多種常用服務(例如MySQL)。 但是,如果您需要使用例如Redis存儲,您可以在服務部分告訴Travis。 ~~~ services: - redis-server ~~~ **數據庫初始化** MySQL在127.0.0.1上運行,您可以使用travis或root作為用戶名登錄。 不需要密碼。 您可以在before_script部分導入數據庫。 假設您的數據庫設置腳本在tests / testbase.sql中。 ~~~ before_script: - mysql -u root -e 'CREATE DATABASE testbase;' - mysql -u root testbase < tests/testbase.sql ~~~ **結果** .travis.yml現在應該看起來像這樣: ~~~ language: php php: - 5.3.3 - 5.4 - 5.5 - 5.6 - hhvm env: - TESTER_PHP_BIN="php-cgi" - TESTER_PHP_BIN="hhvm" matrix: allow_failures: - php: hhvm exclude: - php: 5.3.3 env: TESTER_PHP_BIN="hhvm" - php: 5.4 env: TESTER_PHP_BIN="hhvm" - php: 5.5 env: TESTER_PHP_BIN="hhvm" - php: 5.6 env: TESTER_PHP_BIN="hhvm" - php: hhvm env: TESTER_PHP_BIN="php-cgi" services: - redis-server before_install: - composer self-update install: - composer install --no-interaction --prefer-source before_script: - mysql -u root -e 'CREATE DATABASE testbase;' - mysql -u root testbase < tests/testbase.sql script: - ./vendor/bin/tester -p $TESTER_PHP_BIN -c ./tests/php.ini -s ./tests/ after_failure: # Prints *.actual files content - for i in $(find ./tests -name \*.actual); do echo "--- $i"; cat $i; echo; echo; done ~~~ **GitHub集成** 如上所述,Travis與GitHub集成。 但是,您需要指定要測試哪些存儲庫。 這是使用Webhook完成的,它通知Travis存儲庫中的更改。 **激活Webhook** 首先,轉到Travis CI并使用您的GitHub帳戶登錄。 同步您的帳戶后,您會看到您有權訪問的所有存儲庫。 針對您要啟用的所有存儲庫,將Flip切換為ON。 Travis現在將在每次推送提交或創建拉取請求后將您的存儲庫添加到隊列。 稍后,您的存儲庫將被測試。 **狀態圖像** Travis可以為您生成狀態圖像。 例如,您可以將此圖標嵌入到README.md文件中。 **跳過提交** 一些提交不需要測試。 你可以在你的提交消息中的某處添加[skip ci],Travis會插入提交。
                  <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>

                              哎呀哎呀视频在线观看