Continuous Testing と CI GitHub アクション
Datadog CI Synthetics コマンド を使って、GitHub のワークフローから Synthetic テストをトリガーすることができます。
始めるには
Datadog API キーとアプリケーションキーを GitHub リポジトリにシークレットとして追加します。詳しくは、API とアプリケーションキー を参照してください。 GitHub のワークフローで、DataDog/synthetics-ci-github-action
を使用します。 ワークフローは、シンプル または複雑 にすることができます。
name : Run Synthetic tests using the test public IDs
jobs :
e2e_testing :
runs-on : ubuntu-latest
steps :
- name : Checkout
uses : actions/checkout@v3
- name : Run Datadog Synthetic tests
uses : DataDog/synthetics-ci-github-action@v1.11.0
with :
api_key : ${{secrets.DD_API_KEY}}
app_key : ${{secrets.DD_APP_KEY}}
public_ids : 'abc-d3f-ghi, jkl-mn0-pqr'
Copy
name : Run Synthetic tests using an existing synthetics.json file
jobs :
e2e_testing :
runs-on : ubuntu-latest
steps :
- name : Checkout
uses : actions/checkout@v3
- name : Run Datadog Synthetic tests
uses : DataDog/synthetics-ci-github-action@v1.11.0
with :
api_key : ${{secrets.DD_API_KEY}}
app_key : ${{secrets.DD_APP_KEY}}
Copy
テストファイルの例としては、この test.synthetics.json
ファイル を参照してください。
注 : デフォルトでは、このワークフローは {,!(node_modules)/**/}*.synthetics.json
ファイルにリストされたすべてのテストを実行します (node_modules
フォルダ内のものを除き、.synthetics.json
で終わるすべてのファイルです)。また、public_id
を指定するか、検索クエリを使って Synthetic テストのリストをトリガーすることができます。
name : Run Synthetic tests by test tag
jobs :
e2e_testing :
runs-on : ubuntu-latest
steps :
- name : Checkout
uses : actions/checkout@v3
- name : Run Datadog Synthetic tests
uses : DataDog/synthetics-ci-github-action@v1.11.0
with :
api_key : ${{secrets.DD_API_KEY}}
app_key : ${{secrets.DD_APP_KEY}}
test_search_query : 'tag:e2e-tests'
Copy
name : Run Synthetic tests using search query
jobs :
e2e_testing :
runs-on : ubuntu-latest
steps :
- name : Checkout
uses : actions/checkout@v3
- name : Run Datadog Synthetic tests
uses : DataDog/synthetics-ci-github-action@v1.11.0
with :
api_key : ${{secrets.DD_API_KEY}}
app_key : ${{secrets.DD_APP_KEY}}
test_search_query : 'tag:staging'
variables : 'START_URL=https://staging.website.com,PASSWORD=stagingpassword'
Copy
By default, the path to the global configuration file is datadog-ci.json
. You can override this path with the config_path
input.
name : Run Synthetic tests with custom config
jobs :
e2e_testing :
runs-on : ubuntu-latest
steps :
- name : Checkout
uses : actions/checkout@v3
- name : Run Datadog Synthetic tests
uses : DataDog/synthetics-ci-github-action@v1.11.0
with :
api_key : ${{secrets.DD_API_KEY}}
app_key : ${{secrets.DD_APP_KEY}}
config_path : './global.config.json'
Copy
For an example of a global configuration file, see this global.config.json
file .
名前 タイプ 要件 説明 api_key
文字列 必須 Datadog API キー。このキーは Datadog 組織 によって作成され、シークレット として保存する必要があります。デフォルト: なし。 app_key
文字列 必須 Datadog アプリケーションキー。このキーは Datadog 組織 によって作成され、シークレット として保存する必要があります。デフォルト: なし。 config_path
文字列 オプション テストを起動するときに使用されるグローバル JSON 構成 。詳細はコンフィギュレーションファイル例 を参照してください。デフォルト: datadog-ci.json
。 datadog_site
文字列 オプション データ送信先の Datadog サイト 。デフォルト: datadoghq.com
。 fail_on_critical_errors
ブール値 オプション テストがトリガーされなかったり、Datadog から結果を取得できなかったりした場合に、CI ジョブを失敗させます。デフォルト: false
fail_on_missing_tests
ブール値 オプション パブリック ID (public_ids
を使用するか、テストファイル にリストされている) を持つ指定されたテストが少なくとも 1 つ実行中に見つからない場合 (例えば、プログラム上または Datadog サイトで削除された場合)、CI ジョブを失敗させます。デフォルト: false
fail_on_timeout
ブール値 オプション 少なくとも 1 つのテストがデフォルトのテストタイムアウトを超えた場合、CI ジョブを失敗させます。デフォルト: true
files
文字列 オプション Synthetic テストのコンフィギュレーションファイルを検出するための Glob パターン。デフォルト: {,!(node_modules)/**/}*.synthetics.json
。 junit_report
文字列 オプション JUnit レポートを生成したい場合のファイル名。デフォルト: なし。 public_ids
文字列 オプション トリガーしたい Synthetic テストの公開 ID をカンマで区切ったリスト。値を指定しない場合は、synthetics.json
という名前のファイルを検索します。デフォルト: なし。 polling_timeout
数値 オプション アクションがテスト結果のポーリングを停止するまでの時間 (ミリ秒単位)。CI レベルでは、この時間以降に完了したテスト結果は失敗とみなされます。デフォルト: 30 分。 subdomain
文字列 オプション Datadog アプリケーションにアクセスするために設定されたカスタムサブドメインの名前。Datadog にアクセスするための URL が myorg.datadoghq.com
である場合、サブドメインの値は myorg
に設定する必要があります。デフォルト: app
。 test_search_query
文字列 オプション 検索クエリ に対応するトリガーテスト。デフォルト: なし。tunnel
ブール値 オプション Continuous Testing Tunnel を使用して、テストバッチを実行します。デフォルト: false
。variables
文字列 オプション Synthetic テストに使用するグローバル変数をカンマで区切ったリスト。例: START_URL=https://example.org,MY_VARIABLE=My title
。デフォルト: []
。
See CONTRIBUTING.md
お役に立つドキュメント、リンクや記事: