本番環境の管理者認証情報など、機密性の高い認証情報がテストで使用されることがあります。このような場合、テストの作成時、実行時、または結果表示時に認証情報が公開されないようにする必要があります。Testim の Encrypted Credentials 機能を使用すると、機密性の高いログイン情報を一元的に管理し、Credentials 画面で暗号化して安全に保護できます。暗号化された認証情報を含むテストは、権限のあるユーザーのみが実行および結果の表示を行えます。
テスト内での認証情報の定義場所
暗号化された認証情報を作成した後、以下の場所で使用できます:
- Test Data — テストデータ内の入力パラメーターとして定義
- Config File — 設定ファイルに含める
- Params File — パラメーターファイルに含める
テスト実行での使用方法
暗号化された認証情報は、以下の方法でテストを実行する際に使用できます:
Editor — ローカルおよびリモート("run on grid")実行。Libraries — Test Library、Suite Library、Test Plans Library。テスト実行中にシステムが暗号化された認証情報を含むことを検出すると、フラグが表示されます。
Encrypted Credentials の設定
暗号化された認証情報を使用する前に、認証情報を定義し、必要に応じてユーザーに使用権限を付与する必要があります。
認証情報の作成
暗号化された認証情報を作成できるのは、Project Owner または Company Owner のみです。認証情報の作成後、Project/Company Owner は暗号化された認証情報を含むテストを実行し、テスト結果で認証情報を表示できるユーザーを指定できます(下記の権限の付与を参照)。Project/Company Owner は、暗号化された認証情報の権限を持たないユーザー向けに、フォールバックとして使用するデフォルトの認証情報を定義することもできます。デフォルト値が設定されておらず、ユーザーに権限がない場合、テスト実行時には空文字列が使用されます。新しい暗号化された認証情報を作成するには:
- Resources > Credentials に移動します。
- New Credentials をクリックします。
New Credentials 画面が表示されます。

- Name フィールドに、暗号化された認証情報の名前を入力します。この名前は、CLI でテストを実行する場合などに
<keyName>として参照されます。 - Description フィールドに、必要に応じて説明を入力します。
- Username フィールドに、暗号化された認証情報のユーザー名を入力します。
- Password フィールドに、暗号化された認証情報のパスワードを入力します。
- Add default values フィールドに、必要に応じて Username と Password を追加します。これは、暗号化された認証情報を実行・表示する権限を持たないユーザー向けのフォールバックオプションとして使用されます(権限の付与を参照)。デフォルト値が設定されておらず、ユーザーに権限がない場合、空文字列が使用されます。
- Create をクリックします。
暗号化された認証情報の使用権限の付与
Project/Company Owner は、暗号化された認証情報を使用し、テスト結果で暗号化された認証情報を表示できるユーザーを指定できます。
暗号化された認証情報の権限を付与するには:
- Settings > Project > Resources に移動します。
- ユーザー一覧から、暗号化された認証情報を使用したテストの実行とテスト結果の表示の権限を付与するユーザーを選択します。特定のユーザーを選択するか、All Users オプションを選択してすべてのユーザーに権限を付与します。検索ボックスを使用してユーザーを検索できます。

テストでの Encrypted Credentials の使用
暗号化された認証情報は Test Data に含めることができます。Test Data は特定のテストの一部であり、他のテストからは使用できません。ただし、Config File や Param File(CLI 経由で実行可能)に暗号化された認証情報を追加すると、これらのファイルのデータがテスト実行時に適用されるため、複数のテストで利用できるようになります。
Test Data への暗号化された認証情報の追加
テストデータは Setup ステップの Test Data プロパティから追加できます。データ駆動テストの詳細については、Configuring a Data-driven Test From The Visual Editor を参照してください。Test Data には暗号化された認証情報を含めることができます。
Test Data での認証情報の構文
暗号化された認証情報は以下の構文で指定します:
TST_CREDS.<keyName>.<'username'|'password'><keyName>— Name フィールドで設定した認証情報の名前に置き換えます。<'username'|'password'>—usernameを指定すると暗号化されたユーザー名を使用し、passwordを指定すると暗号化されたパスワードを使用します。
例:
TST_CREDS.myEncryptedCredentials.usernameTST_CREDS.myEncryptedCredentials.password
Config File への暗号化された認証情報の追加
設定ファイルは、テストやテストスイートの実行に必要なすべてのパラメーターを含む共通の JavaScript ファイルです。単一テストまたは全テストの前後にアプリケーションバックエンドのセットアップやパラメーター定義に使用できる run hooks が含まれています。設定ファイルは config という名前の JSON ですべてのプロパティをエクスポートする必要があります。Config File での認証情報の定義は、他のパラメーターと同じオーバーライドルールに従います。
Config File での認証情報の構文
暗号化された認証情報は以下の構文で指定します:
TST_CREDS.<keyName>.<'username'|'password'><keyName>— Name フィールドで設定した認証情報の名前に置き換えます。<'username'|'password'>—usernameを指定すると暗号化されたユーザー名を使用し、passwordを指定すると暗号化されたパスワードを使用します。
例:

Param File への暗号化された認証情報の追加
JSON パラメーターファイルを使用すると、テスト実行にパラメーターを渡すことができます。この方法を使用すると、テスト環境によって異なる動的な値をテスト内で定義できます。例えば、ローカルテスト時と CI でのテスト時に異なるログイン認証情報(ユーザー名とパスワード)を設定できます。パラメーターを定義する JSON パラメーターファイルを作成し、テスト実行時に JSON パラメーターファイルを呼び出す引数をコマンドに追加します。CLI コマンドは、実行に含まれるテストにパラメーターを渡します。
Param File での認証情報の構文
暗号化された認証情報は以下の構文で指定します:
TST_CREDS.<keyName>.<'username'|'password'><keyName>— Name フィールドで設定した認証情報の名前に置き換えます。<'username'|'password'>—usernameを指定すると暗号化されたユーザー名を使用し、passwordを指定すると暗号化されたパスワードを使用します。
パラメーターファイルを暗号化された認証情報に対応させる
パラメーターファイルは JSON 形式で定義されますが、この種の静的ファイルは暗号化された認証情報の使用をサポートしていません。パラメーターファイルを暗号化された認証情報に対応させるには:
- ファイル名の拡張子を
.JSに変更します(.jsonの代わり)。例:<file name>.js - 最初の行として
module.exports=を追加します:
module.exports = { username: TST_CREDS.<keyName>.<'username'>, password: TST_CREDS.<keyName>.<'password'>,}例:

Encrypted Credentials を含むテストの実行
CLI での実行
暗号化された認証情報を含むテストを実行するには、CLI コマンドに特別な --user-access-key フラグを追加する必要があります。このフラグには、各ユーザー固有の特別なキーが含まれており、以下の手順で User Profile 画面から取得できます。
User Access Key を取得するには:
- 画面右上のプロフィール(イニシャルアイコン)をクリックします。
- View Profile をクリックします。
- User Access Key タブをクリックします。
固有の User Access Key が保護のため部分的に隠された状態で表示されます。

- Copy ボタンをクリックしてキーをコピーします。
Scheduler での実行
Scheduler を使用して、暗号化された認証情報を含むテストを実行できます。ただし、暗号化された認証情報を使用したテストは権限のあるユーザーのみが実行できるため、Scheduler の Advanced Settings でテストの実行に使用するユーザーを指定する必要があります。
Scheduler で暗号化された認証情報を含むテストを実行するには:
- Scheduler のドキュメントの手順に従います。
- Advanced をクリックします。
- Credentials の下で、暗号化された認証情報の使用が許可されているユーザーをドロップダウンメニューから選択します。自分自身のユーザーまたはリスト内の別のユーザーを選択できます。

- Create をクリックします。
API での実行
Testim REST API を使用して、暗号化された認証情報を含むテストを実行できます。暗号化された認証情報を含むテストを実行し、テスト実行の完全なデータを取得するには、API コールに --user-access-key の値を追加する必要があります。このアクセスキーは各ユーザー固有の特別なキーで、以下の手順で User Profile 画面から取得できます。アクセスキーの値は API コールの X-User-Access-Key フィールドに含める必要があります。Testim REST API は、暗号化された認証情報データを含むテスト結果(暗号化された認証情報を含むスクリーンショットなど)の表示にも使用できます。
User Access Key を取得するには:
- 画面右上のプロフィール(イニシャルアイコン)をクリックします。
- View Profile をクリックします。
- User Access Key タブをクリックします。
固有の User Access Key が保護のため部分的に隠された状態で表示されます。

- Copy ボタンをクリックしてキーをコピーします。
Encrypted Credentials を含むテスト実行のまとめ
テストデータ、Config File、Params File に保存された暗号化された認証情報を含むテストを実行するさまざまなオプションのまとめです。
Test Data の暗号化された認証情報を含むテストの実行
権限のあるユーザーは、Editor、CLI、REST API を通じて Test Data の暗号化された認証情報を含むテストを実行できます。
- Editor — ローカルおよびリモート("run on grid")実行。Run test ボタンをクリックするか、ドロップダウンからリモートテストを実行します。
- Libraries — Test Library、Suite Library、Test Plans Library。Play ボタンをクリックします。
- CLI — 上記で説明した特別な
--user-access-keyフラグを追加して、通常のコマンドを使用します。
npm i -g @testim/testim-cli && testim --token <token Id> --project <project Id> --grid "Testim-Grid" --label "label #2" --user-access-key <key Id>- API — Testim REST API コール(例:
POST /tests/run/{testId})を作成し、user-access-keyの値をX-User-Access-Keyフィールドに追加します。

Config File の暗号化された認証情報を含むテストの実行
権限のあるユーザーは、CLI を通じて Config File の暗号化された認証情報を含むテストを実行できます。
- CLI — 上記で説明した特別な
--user-access-keyフラグを追加して、通常のコマンドを使用します。
testim --label "<YOUR LABEL>" --token "<YOUR ACCESS TOKEN>" --project "<YOUR PROJECT ID>" --grid "<Your grid name>" --user-access-key <key Id> --config-file testimConfig.jsParams File の暗号化された認証情報を含むテストの実行
権限のあるユーザーは、CLI を通じて Params File の暗号化された認証情報を含むテストを実行できます。
- CLI — 上記で説明した特別な
--user-access-keyフラグを追加して、通常のコマンドを使用します。
testim --label "<YOUR LABEL>" --token "<YOUR ACCESS TOKEN>" --project "<YOUR PROJECT ID>" --grid "<Your grid name>" --user-access-key <key Id> --params-file testimParams.jsEncrypted Credentials を含むテスト実行結果の表示
暗号化された認証情報を使用したテストのテスト結果は、権限のあるユーザーのみが表示できます。暗号化された認証情報を使用したテスト実行には、Encrypted Credentials アイコンが表示されます。

情報ツールチップの「Test Data」セクションには、暗号化された認証情報を含む可能性のあるテストデータが表示されます。テスト実行に暗号化された認証情報が含まれる場合、テストデータセクション(ツールチップからアクセス可能)はすべてのユーザーに表示され、認証情報への参照が TST_CREDS.<key name>.username | password の形式で表示されます。テストデータは一般的に、カウントされた実行でのみアクセス可能であり、ローカルのエディター実行ではアクセスできません。
