BigQueryインテグレーション

BigQueryインテグレーションを使えば、プランやテストが完了するとすぐに、結果、期間、ブラウザの種類などの実行の詳細が、設定された BigQuery データセットのテーブルに書き込めます。詳細については、エクスポート スキーマを参照してください。

BigQueryインテグレーション(統合)を使えば、プランやテストが完了するとすぐに、結果、期間、ブラウザの種類などの実行の詳細が、設定された BigQuery データセットのテーブルに書き込めます。詳細については、エクスポート スキーマを参照してください。

Enterpriseプランから利用可能

この機能はトライアル時とEnterpriseプランで利用可能です。

はじめに

BigQueryの統合には有料のGoogle Cloudアカウントが必要です

未払いのトライアル用Google Cloudアカウントで利用できるBigQuery Sandbox機能は、mablのBigQueryフィードエクスポートでは使用できません。これは、Streaming Inserts が BigQuery Sandbox でサポートされていないためです。

mabl BigQuery Export を使用するには、有料の GCP BigQuery アカウントにアップグレードしてください。

サービスアカウントの追加

mablがデータを配信するためには、配信先のGCPプロジェクトにサービスアカウントを追加する必要があります。

Google Cloud Projectのエイリアス

GCPでは、プロジェクトのエイリアス(プロジェクトIDと名前が異なる)を使用することがあります。
この場合は、アカウント名ではなくアカウントIDを使用してください。

gcloud project list を実行すると、すべてのプロジェクトの詳細(Id、Name、Number)が表示されます。

  1. 配信先のGoogle Cloud Platformプロジェクトに BigQuery Data Editor としてServiceAccount に [email protected] を追加します(詳細)。
  2. mablのウェブUIで、Setting > Integrations と進み、BigQuery Export をクリックします。
  3. エクスポート先のプロジェクト ID、データセット名、およびエクスポートテーブルのプレフィックスを追加します。

  4. 個人を特定できるデータの再編集を設定します。

可読性を高めるために、エクスポートでは、不透明な一意の識別子と、顧客が提供する name プロパティの両方を使用してエンティティを参照します。

user エンティティの場合、この名前はユーザーの電子メールです。ただし、顧客によってはこの情報を BigQuery で使用したくない場合もあります。Redact Personal Information Fields を有効にすると、以降のすべての書き込みにおいて、これらのエントリが PII_REDACTED という値に置き換えられます。

個人を特定できるフィールドを再編集する。

個人を特定できるフィールドを再編集する。

フィールドリダクションにフリーテキストは含まれないでください

PIIリダクションでは、以下のフィールドのみが除外されます。

  • trigger_user_email
    テスト名のようなその他のフリーテキストフィールドは含まれます。
  1. 「保存」をクリックします。
BigQueryの「+ SETUP」ボタンをクリックしてスタートします。

BigQueryの「+ SETUP」ボタンをクリックしてスタートします。

BigQuery のテーブルレイアウトとパーティション

最初のテストをBigQueryエクスポートフィードで実行すると、指定されたデータセットと以下のテーブルが作成されます。

  • <table_prefix>_plan_run
  • <table_prefix>_journey_run
  • <table_prefix>_run_categorization

例えば、デフォルト値を使用した場合、以下のようなBigQueryテーブルが作成されます。

  • <your-project>:mabl_export.mabl_plan_run
  • <your-project>:mabl_export.mabl_journey_run
  • <your-project>:mabl_export.mabl_run_categorization

これらのテーブルは、列に基づいて、日ごとに分割されます

  • <table_prefix>_plan_run on column start_time
  • <table_prefix>_journey_run on column start_time
  • <table_prefix>_run_categorization on column created_time

テストデータを一定期間後に破棄したい場合は、BigQueryデータウェアハウスでパーティションの有効期限を設定することができます。

個人を特定できるデータの再編集

可読性を高めるために、エクスポートでは、不透明な一意の識別子と、顧客が提供する name プロパティの両方を使用してエンティティを参照します。

user エンティティの場合、この名前はユーザーの電子メールです。ただし、顧客によってはこの情報を BigQuery で使用したくない場合もあります。Redact Personal Information Fields を有効にすると、以降のすべての書き込みにおいて、これらのエントリが PII_REDACTED という値に置き換えられます。

テーブルスキーマの変更

テーブルスキーマの変更は稀で、発生しても追加的にしか行われません。

  • 新規カラムのみ
  • Friends of mablのSlackとメールリストでの告知
  • アクティブな統合ユーザーの管理者に通知されます

テーブルスキーマ

# Table *_plan_run

統合ワークスペースで実行されたすべてのプランを含み、プラン実行の完了時に書き込まれます。

Column Name
Type
Description

id

String

plan run id

plan_id

String

plan id

plan_name

String

plan name

plan_url

String

plan UI URL

status

String

plan run status

success

Boolean

overall plan run success

start_time

Timestamp

plan run start time UTC

stop_time

Timestamp

plan run stop time UTC

runtime_millis

Integer

total plan run time milliseconds

tags

String, Repeated

plan tags

labels

String, Repeated

plan labels

application_id

String

application under test id

application_name

String

application under test name

application_url

String

application under test UI URL

starting_url

String

application under test starting url

trigger_type

String

execution trigger type

trigger_user_id

String

execution triggering user (optional)

trigger_user_email

String

execution triggering user email (optional)

deployment_id

String

execution trigger deployment id (optional)

workspace_id

String

workspace name

workspace_name

String

workspace name

トリガータイプに関する注意事項

trigger_type ディメンションには、以下のいずれかの値を指定します。

Trigger Type Value
Description
User Id/Email populated

SCHEDULE

Executed by timer/schedule trigger

No

MANUAL

Executed manually from mabl web app or CLI
(non-Deployment event)

Yes

CUSTOMER_EVENT

Executed for Deployment API trigger

No

INSIGHT

Executed in reaction to a mabl Insight

No

Table *_journey_run

統合されたワークスペースで行われたすべてのテスト実行が含まれており、テスト実行の完了時に書き込まれます(親がまだ完了していないため、親のプラン実行の前に書き込まれることもあります)。

Column Name
Type
Description

id

String

test run id

journey_id

String

test id

journey_name

String

test name

journey_url

String

test UI URL

view_output_url

String

test run output UI URL

status

String

test run status

success

Boolean

overall test run success

start_time

Timestamp

test run start time UTC

stop_time

Timestamp

test run stop time UTC

runtime_millis

Integer

total test run time milliseconds

tags

String, Repeated

test tags

labels

String, Repeated

test labels

mabl_branch

String

mabl branch test ran against

environment_id

String

test run environment

environment_name

String

test run environment name

environment_url

String

test run environment UI URL

browser_type

String

browser under test type

browser_version

String

browser under test version

plan_id

String

plan id

plan_name

String

plan name

plan_url

String

plan UI URL

plan_run_id

String

plan run id

workspace_id

String

workspace id

workspace_name

String

workspace name

Table *_run_categorization

統合されたワークスペースのすべてのテスト実行失敗理由を含み、ユーザーが特定のテスト実行出力に失敗理由を設定したときに書き込まれます。

アップデート時のテストランごとの繰り返しのエントリー

テストランの失敗理由(categoryディメンションに格納されている)が変更されるたびに、新しい行が書き込まれます。journey_run_id でグループ化し、最新のcreate_time 値を取って、テストランに与えられた最新のカテゴリーを見つけます。

失敗理由が 削除された場合categoryNULL になります。
これは、ユーザーがテストランの失敗理由を削除したことを示します。

Column name
Type
Description

id

String

unique id

category

String

failure reason (NULL on removed)

journey_id

String

test id

journey_name

String

test name

journey_run_id

String

test run id

created_time

Timestamp

grading time UTC

start_time

Timestamp

test run start time UTC

stop_time

Timestamp

test run stop time UTC

grader_user_id

String

grading user id

grader_user_email

String

grading user email (optional)

workspace_id

String

workspace id

workspace_name

String

workspace name

tombstone

Boolean

Indicator that failure reason has been removed from test run. Will be true if test run no longer has a failure reason and category will be NULL.

問い合わせの失敗理由

BigQuery のエクスポートはデータウェアハウス形式で行われるため、テーブルは更新/削除されず、追加されるだけです。

このため、障害理由のような変更可能な値は、変更されると複数の行が書き込まれることになります。したがって、最新の障害理由を判断するには、(1) 最後の更新を見つけ、(2) 一致する行を選択する必要があります。次のクエリでこれを行います。

使用するには、my-project.mabl_export.mabl_run_categorization を、お使いのBigQueryシステムのテーブル名に置き換えてください。

SELECT
  failure_reason.*
  
FROM (
  -- Get latest update time
  SELECT
    journey_run_id,
    MAX(created_time) AS last_updated_time
  FROM
    `my-project.mabl_export.mabl_run_categorization`
  GROUP BY
    journey_run_id ) AS latest_categories

JOIN `my-project.mabl_export.mabl_run_categorization` AS failure_reason
ON failure_reason.created_time = latest_categories.last_updated_time

-- Ignore removed failure reasons
WHERE failure_reason.category IS NOT NULL

Updated 10 days ago



BigQueryインテグレーション


BigQueryインテグレーションを使えば、プランやテストが完了するとすぐに、結果、期間、ブラウザの種類などの実行の詳細が、設定された BigQuery データセットのテーブルに書き込めます。詳細については、エクスポート スキーマを参照してください。

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.