AWS Device Farm での制限 - AWS Device Farm

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Device Farm での制限

サービス制限

  • テスト実行に含めることができるデバイスの数に制限はありません。ただし、Device Farm がテスト実行中に同時にテストするデバイスの最大数は 5 です。この数は、リクエストに応じて引き上げられ、サービスチームによってケースごとに評価される場合があります。

  • スケジュールできる実行の数に制限はありません。キューに入れられるのは最大 24 時間のみです。

  • リモートアクセスセッションの期間には、150 分のハードリミットがあります。

  • 自動化されたテスト実行の期間には、150 分のハードリミットがあります。

  • アカウントでキューに入っている保留中ジョブを含め、取り扱いジョブの最大数は250です。これはソフトリミットです。

  • テスト実行に含めることができるデバイスの数に制限はありません。特定の時点においてテストを並列で実行できるデバイス (ジョブ) の数は、アカウントレベルの同時実行数と同じです。Device Farm の従量制料金でのデフォルトのアカウントレベルの同時実行数は 5 です。

  • 従量制同時実行数の制限は、ユースケースに応じて、リクエストにより特定のしきい値まで引き上げることができます。未計測時の使用におけるデフォルトのアカウントレベルの同時実行数は、そのプラットフォームでサブスクライブしているスロット数と同じです。

    デフォルトの従量制同時実行数の制限またはクォータ全般の詳細については、[クォータ] ページを参照してください。

  • カスタムテスト環境を使用しないオートメーションの実行には、最大 250 の個別のテストケースしか含めることができません。そうしないと、実行がスキップされる可能性があります。

ファイルの制限

  • アップロードできるアプリケーションの最大ファイルサイズは 4 GB です。現在、Android 用の .aab 形式のファイルは受け付けていないことに注意してください。

  • テスト実行中に Device Farm が自動生成する動画の最大サイズは 1GB です。このサイズを超える動画では、残りの動画コンテンツはすべて切り捨てられます。独自の動画録画ソリューションがある場合はそれを引き続き利用し、Device Farm のマネージドストレージの外部に保存することもできます。

  • テスト実行中に Device Farm が自動生成するデバイスログ (Android の場合は logcat、iOS の場合は syslog) の最大サイズは 1GB です。このサイズを超えるログがあると、残りのログはすべて切り捨てられます。1 GB を超えるログについては、そのログを Device Farm のマネージドストレージの外部に保存できます。

  • Device Farm のカスタム環境モードのカスタマーアーティファクトの最大累積サイズは 1GB です。アーティファクトがこのサイズを超えると、アーティファクトはすべて使用できなくなります。

  • テスト実行中に生成されたすべてのアーティファクトの累積サイズが 4GB を超えた場合、一部のアーティファクト (動画、デバイスログ、カスタマーアーティファクトなど) が削除される可能性があります。

API の制限

  • Device Farm はトークンバケットアルゴリズムに従って API コールレートを調整します。例えば、トークンを保持するバケットを作成するとします。各トークンは 1 つのトランザクションを表し、1 つの API コールはトークンを 1 つ消費します。トークンは固定レート (1 秒あたり 10 トークンなど) でバケットに追加され、バケットは最大容量 (100 トークンなど) が決まっています。リクエストまたはパケットが到着すると、処理するバケットからトークンを要求する必要があります。十分なトークンがある場合、リクエストは許可され、トークンは削除されます。十分なトークンがない場合、リクエストは実装に応じて遅延または削除されます。

    Device Farm では、アルゴリズムの実装方法は次のとおりです。

    • Burst API リクエストは、指定された顧客アカウント ID 内の指定された API に対してサービスが応答できるリクエストの最大数です。つまり、これはバケットの容量です。バケットにトークンが残っている限り API を呼び出すことができ、各リクエストはトークンを 1 つ消費します。

    • Transactions-per-second (TPS) レートは、API リクエストを実行できる最小レートです。つまり、これはバケットが 1 秒あたりにトークンを補充するレートです。例えば、API のバースト数が 10 で TPS が 1 の場合、API をすぐに 10 回呼び出すことができます。ただし、バケットは 1 秒あたり 1 トークンのペースでのみトークンを回復するため、API の呼び出しを停止してバケットを補充しない限り、1 秒あたり 1 回のコールにスロットリングされます。

Device Farm API のレートは次のとおりです。

  • List and Get API の場合、バースト API リクエストの容量は 50 で、Transactions-per-second (TPS) レート10 です。

  • 他のすべての API の場合、バースト API リクエストの容量は 10 で、Transactions-per-second (TPS) レート1 です。

Appium エンドポイントの制限

以下の制限は、すべての Appium エンドポイントセッションに適用されます。制限を最適に処理する方法に関する質問やガイダンスについては、サポートケースを開いてください。

  • すべての Appium コマンドの実行時間制限は 4 分で、その後コマンドはタイムアウトします。

  • エンドポイントは、最大 20MB の入力ペイロードサイズを受け入れ、最大 20MB の出力ペイロードサイズを許可します。これより大きい入力または出力サイズを持つリクエストは、WebDriver エラー を受け取ります'unsupported operation'

  • リクエストは、受信した順序でデバイス上で順番に実行されます。そのため、コマンドを順番に送信し、新しいコマンドを送信する前に各コマンドのレスポンスを待つことを強くお勧めします。ただし、特定の Appium サーバーコマンドを並行して送信できます。具体的には、次のようになります。

  • エンドポイントは、現時点では WebDriver BiDi プロトコルをサポートしていません。

  • エンドポイントは、Appium プラグインまたは XCUITest および UIAutomator2 ドライバー以外のドライバーをサポートしていません。

  • リモートアクセスセッションの作成リクエストでは、最大 3 つのアプリを補助アプリとして使用できます。ただし、 InstallToRemoteAccessSession API を使用してセッション中にインストールできるアプリの数に制限はありません。

カスタム環境変数の制限

以下の制限は、すべてのカスタム環境変数に適用されます。制限を最適に処理する方法に関する質問やガイダンスについては、サポートケースを開いてください。

  • 最大 32 個の変数を、特定の Device Farm プロジェクトまたは実行で設定できます。

  • 変数名の長さは 256 文字を超えることはできません。

  • 変数名には、 によって課される制限が適用されますbash。つまり、英数字とアンダースコア文字のみを含める必要があり、数字で始めることはできません。

  • で始まる変数名$DEVICEFARM_は、内部サービス用に予約されています。

  • 変数値は 256 文字を超えることはできません。

  • 環境変数を使用して、テスト仕様ファイルでテストホストのコンピューティング選択を設定することはできません。