2017-02-16 6 views
0

私はPHPUnitとlaravelでいくつかのテストを作成しました。テストはローカルで成功していますが、gitlab ciジョブではエラーが発生します。より良いデバッグのために失敗したCIビルドをどのようにデバッグできますか?

There was 1 failure: 

1) Tests\Feature\AuthTest::testAuthLoggedInIsAdmin 
Expected status code 200 but received 500. 
Failed asserting that false is true. 

/builds/XXX/webproject/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestResponse.php:55 
/builds/XX/webproject/tests/Feature/AuthTest.php:53 

と私はWebサーバからプロジェクトまたはerror.logからエラートレースを必要とするソリューションを見つける:ここ

は、CIログです。

ciでエラーをデバッグするベストプラクティスは何ですか?

答えて

1

解決方法は非常に簡単です...私は質問を削除しません。

ジョブにartifactを追加する必要があります。アーティファクトを設定することができます。アーティファクトは失敗時にのみ作成されます。ビルドに失敗した場合、ホールプロジェクトは別の場所にダンプされます。これで、ダンプ上の各ファイルを参照できます。

.gitlab-ci.yml

stages: 
    - test 
    - deploy 

php-7.0: 
    stage: test 
    type: test 
    services: 
    - mysql:latest 
    image: tetraweb/php:7.0 
    script: 
    - bash .gitlab-ci.sh 
    - php vendor/bin/phpunit --coverage-text --colors=never 
    artifacts: 
    when: on_failure 
    name: "${CI_BUILD_STAGE}_${CI_BUILD_REF_NAME}_FAILED" 
    paths: 
     - "." 
    untracked: false 
    expire_in: 1 day 

deploy: 
    stage: deploy 
# etc... 

Hereアーティファクトについての詳細情報です。

あなたはgitlabでパイプラインセクションの成果物をダウンロードすることができます。

Gitlab Artifacts download

関連する問題