bitbucket-pipelines テストサマリを表示
5201 ワード
概要
bitbucket pipelinesではjunitの形式のxmlからテストのサマリを表示することができる。
pipelinesで取得できたサマリーはpipelinesのページに表示される
- bitbucket pipelinesでテストサマリを表示する
- 参考
環境
手順
- bitbucket pipelinesを使える状態にする
- bitbucket pipelinesを使える状態にする
参考
bitbucket pipelines セットアップはこちら
- golangでjunitの形式でテストのレポートを作成する場合は
go-junit-report
を使用するのが便利
$ go get -u github.com/jstemmer/go-junit-report
- テスト時に特定のディレクトリにレポートを出力することでpipelinesで表示してくれるようになる。以下がpipelinesファイルの例
bitbucket-pipelines.yml
# This is a sample build configuration for Go.
# Check our guides at https://confluence.atlassian.com/x/5Q4SMw for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.
image: golang:1.7
pipelines:
default:
- step:
script: # Modify the commands below to build your repository.
- PACKAGE_PATH="${GOPATH}/src/bitbucket.org/${BITBUCKET_REPO_FULL_NAME}"
- mkdir -pv "${PACKAGE_PATH}"
- tar -cO --exclude-vcs --exclude=bitbucket-pipelines.yml . | tar -xv -C "${PACKAGE_PATH}"
- echo "${GOPATH}"
- cd "${PACKAGE_PATH}"
- go get -v
- go build -v
- go get -u github.com/jstemmer/go-junit-report
- mkdir -p "/opt/atlassian/pipelines/agent/build/test-reports/"
- go test -v 2>&1 | go-junit-report -set-exit-code=1 > /opt/atlassian/pipelines/agent/build/test-reports/junit.xml
-
mkdir -p "/opt/atlassian/pipelines/agent/build/test-reports/"
で出力先のディレクトリを作成 -
go test -v 2>&1 | go-junit-report -set-exit-code=1 > /opt/atlassian/pipelines/agent/build/test-reports/junit.xml
でjunit形式のレポートを作成したディレクトリに出力する -
-set-exit-code=1
をgo-junit-reportの実行オプションに指定することで、go test
の実行でFAILがあったときに、中断することができる - 上記のpipelinesファイルでpipelineが実行された場合、テストの失敗時にビルドが失敗する。(成功時にもレポートに失敗した情報が入っている場合はサマリが表示されるが、コマンドが成功した場合は後段のコマンドが実行されてしまう。)
- 失敗したテストケースがない場合はサマリは表示されない
成功時
- 失敗時にはタブにTestsが追加されており、サマリが表示される
失敗時
Author And Source
この問題について(bitbucket-pipelines テストサマリを表示), 我々は、より多くの情報をここで見つけました https://qiita.com/honeytrap15/items/0dc22b44fa32a52c80d2著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .