テスト結果の公開
テスト結果は、ビルド・プロセスで実行されたテストについて DevOps Insights に通知します。 それらのテストでは、JSON または XML ベースのファイルが生成される必要があります。 生成されたテスト・ファイルが、テスト・レコードとして公開されます。 テスト・ファイルに加えて、このレコードには、アプリケーション名、ビルド番号、テストのタイプなどのフィールドが含まれます。
開始前に
ビルド・レコードを公開します。
テスト結果のアップロード
テスト・レコードのアプリケーション名およびビルド ID は、特定のビルドのビルド・レコードで使用されているアプリケーション名およびビルド ID と一致する必要があります。 次のスクリプト例は、機能検証テスト (FVT) の結果を DevOps Insights にアップロードします。
# Run tests and generate a test results file here.
#install the DevOps Insights plugin
ibmcloud plugin install -f doi
# Login to IBMCloud if you are not already logged in. Assumes that $API_KEY environment variable has been set as a secured property
ibmcloud login --apikey $API_KEY --no-region
ibmcloud doi testrecord-publish --logicalappname="$MY_APP_NAME" --buildnumber="$MY_BUILD_NUMBER" --filelocation fvttest.json --type fvt
スクリプト例の testrecord-publish
は、そのコマンドによってテスト・レコードがアップロードされることを指定します。 --filelocation
フラグは、ジョブのルート・ディレクトリーを基準とするテスト結果ファイルの相対位置を示しています。 --type
フラグは、テスト結果のタイプを示しています。
以下のスクリプト例は、テストを実行してから、Mocha の結果を DevOps Insightsにアップロードします。
# Run tests and generate a test results file here.
istanbul cover --report lcov --report json-summary _mocha -- -R xunit -O output=./test/results/mocha.xml 'test/**/*.js'
#install the DevOps Insights plugin
ibmcloud plugin install -f doi
# Login to IBMCloud if you are not already logged in. Assumes that $API_KEY environment variable has been set as a secured property
ibmcloud login --apikey $API_KEY --no-region
#Publish test results. Assumes that MY_APP_NAME and MY_BUILD_NUMBER environment variables are already set
ibmcloud doi testrecord-publish --logicalappname="$MY_APP_NAME" --buildnumber="$MY_BUILD_NUMBER" --filelocation /test/results/mocha.xml --type unittest
ibmcloud doi testrecord-publish --logicalappname="$MY_APP_NAME" --buildnumber="$MY_BUILD_NUMBER" --filelocation ./coverage/coverage-summary.json --type code
このコマンドでは、以下の type
値がサポートされます。
タイプ | 説明 |
---|---|
unittest |
単体テストの結果 |
fvt |
機能検証テストの結果 |
code |
コード・カバレッジの結果 |
sonarqube |
SonarQube スキャンの結果 |
staticsecurityscan |
IBM Application Security on Cloud の静的セキュリティー・スキャンの結果 |
dynamicsecurityscan |
IBM Application Security on Cloud の動的セキュリティー・スキャンの結果 |
vulnerabilityadvisor |
IBM Vulnerability Advisor on Cloud の脆弱性アドバイザー結果 |
テスト・レコードでは、以下のいずれかのサポートされている形式でデータを提供する必要があります。
テスト・タイプ | サポートされる形式 |
---|---|
単体テスト | Mocha、xUnit、Karma/Mocha |
機能検証テスト | Mocha、xUnit、Karma/Mocha |
コード・カバレッジ | コベルチュラ, lcov,JaCoCo |
SonarQube | SonarQube スキャンで提供されるスキャン・データ |
静的アプリ・スキャン | IBM Application Security on Cloud で提供される静的アプリ・スキャン |
動的アプリ・スキャン | IBM Application Security on Cloud で提供される動的アプリ・スキャン |
脆弱性アドバイザー結果 | IBM Vulnerability Advisor on Cloud の脆弱性アドバイザー結果 |
テスト結果の表示
パイプラインが実行されると、テスト結果データが DevOps Insights に公開されます。 テスト結果データは「品質ダッシュボード (Quality Dashboard)」ページで確認できます。
- IBM Cloud コンソールで、メニュー・アイコン
をクリックし、 リソース・リストを選択します。
- ツールチェーンを選択します。
- ツールチェーンの「概要」ページの**「IBM Cloud ツール」カードで、「DevOps Insights」**をクリックします。
- ナビゲーションで**「品質ダッシュボード (Quality Dashboard)」**をクリックしてページを開きます。
「品質ダッシュボード」ページについて詳しくは、DevOps データ集約を参照してください。
次のステップ
ゲートを評価します。