コンテンツにスキップ

Appium 設定ファイル

Appium にコマンドラインで引数を渡す代わりに、特別な設定ファイルに追加することもできます。Appium は実行時にこの設定ファイルから値を読み取ります。(設定ファイルと CLI 引数の両方で値が設定されている場合、CLI 引数が優先されます。)

サポートされている設定ファイルの形式

設定データは、以下の種類のファイルに保存できます。

  • JSON
  • YAML
  • JS (JS オブジェクトをエクスポートする JavaScript ファイル)
  • CJS (上記と同じ。拡張子は common JS 用)

警告

注: ESM 形式の設定ファイルは現在サポートされていません。

サポートされている設定ファイルの場所

設定ファイルには任意の名前を付けることができますが、以下のファイル名は Appium によって自動的に検出されロードされます。

  • .appiumrc.json (推奨)
  • .appiumrc.yaml
  • .appiumrc.yml
  • .appiumrc.js
  • .appiumrc.cjs
  • appium.config.js
  • appium.config.cjs
  • .appiumrc (JSON とみなされます)

さらに、プロジェクトで Node.js を使用している場合package.json 内の appium プロパティ内に設定を保存すると、自動的に検出されます。

Appium は、現在の作業ディレクトリからディレクトリツリーをに向かってこれらのファイルのいずれかを探します。現在のユーザーのホームディレクトリまたはファイルシステムのルートに到達すると、検索を停止します。

設定ファイルのカスタムの場所を指定するには、appium --config-file /path/to/config/file を使用します。

設定ファイルの形式

まず、いくつかの例を見てみましょう。

形式の説明も利用可能です。

言葉で説明すると、設定ファイルにはルートの server プロパティがあり、すべての引数は子プロパティです。コマンドラインでカンマ区切りリスト、JSON 文字列、または外部ファイルパスとして指定する必要がある特定のプロパティの場合、これらは代わりに「ネイティブ」型になります。たとえば、--use-plugins <value> には、<value> がカンマ区切りの文字列または区切りファイルへのパスである必要があります。ただし、設定ファイルでは配列だけが必要です。例:

{
  "server": {
    "use-plugins": ["my-plugin", "some-other-plugin"]
  }
}

拡張機能の設定 (ドライバーとプラグイン)

driver および plugin 固有の設定の場合、これらはそれぞれ server.driver および server.plugin プロパティの下に存在します。各ドライバーまたはプラグインには、独自の名前付きプロパティがあり、提供する特定の設定の値はこの下にあります。例

{
  "server": {
    "driver": {
      "xcuitest": {
        "webkit-debug-proxy-port": 5400
      }
    }
  }
}

上記の設定は、--driver-xcuitest-webkit-debug-proxy-port CLI 引数に対応しています。

すべてのプロパティは大文字と小文字が区別され、ケバブケースになります。たとえば、callback-port は許可されていますが、callbackPort は許可されていません。