# トラブルシューティングガイド

# システム構成とインストール

# PowerShellセキュリティの問題

ユーザーは、appiumまたはappium-doctorを実行した後にエラーPSSecurityExceptionが発生する場合があります。
この問題を回避するには、以下のいずれかの方法を選択してください。 実行ポリシーの問題

最初のメソッド: コマンドライン経由の実行ポリシー設定

管理者としてPowerShellを開き、Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope LocalMachineコマンドを実行し、確認メッセージが表示されたらAまたはYと入力してEnterキーを押下します。 実行ポリシーの確認メッセージ

PowerShellスクリプト実行ポリシーの詳細については、こちらの記事を参照してください。

2番目のメソッド:設定アプリでの実行ポリシー設定(Windows 10のみ)

設定を開き、Update & Securityの下のFor Developersタブに移動します。 psスクリプトを実行するための未適用の設定

PowerShellセクションまでスクロールダウンし、Applyボタンをクリックすると、このセクションは不透明となります。 psスクリプトを実行するための適用済みの設定

# Appium Doctor

Appium Doctorは、環境が正しく設定されているかどうかを確認する便利なツールです。 以下の問題のいずれかがある場合は、必要なすべてのコンポーネントがインストールされているかどうかを確認した後、このガイドに従って環境変数を再設定してみてください。 appium doctorの環境エラーチェックリスト 上記の解決策が効果的ではない場合は、JDKやAndroid SDKツールなどの関連コンポーネントを削除して再インストールし、変数を再設定してください。
ヘルプについては、このガイドを確認してください。

TIP

環境変数が変更された場合、コマンドラインウィンドウを再度開いてこれらの変数をリロードする必要があります。

# 新しいプロジェクトを作成

# "npm i"に関する問題

新しいプロジェクトが正常に作成されたら、PCのデフォルトのシェル(例:Powershell、zsh)が自動的に起動し、 npm iを実行してプロジェクトに必要なパッケージをインストールします。
ユーザーはnpm iを使用して、Gondolaフレームワークを再インストールすることもできます。

次のような新しいプロジェクトを正常に作成した後、 npm iでエラーが発生することがあります: JSON Parse-npm i error

npm cache clean --forceを実行するか、ダウンロードされたすべてのパッケージを含むプロジェクトのルートフォルダーにあるnode_modulesフォルダーを削除してから、もう一度 npm iを実行してみてください。

npm cacheの詳細については、ドキュメントこちらを参照してください。

# テストの実行

# Android SDK Platform-ToolsとAppiumの互換性

Appium(例:v1.15.1)は、一部のAndroid SDK Platform-Toolsバージョン(例:v29.0.0-5611747)と互換性がありません。
ユーザーがテストを実行すると、エラーメッセージが次のように表示されます。 SDDK Tools互換性のないエラーメッセージ

その場合は、最新のAndroid SDK Platform-Toolsバージョンにアップグレードする必要があります。
このプロセスを完了するには下記のステップを従ってください。

  1. Android Studioを開く。
  2. メニューバーからTools > SDK Managerを選択し、SDK Managerを開く。 Android SDK Manager
  3. Android SDK > SDK Toolsを選択する。 Android SDKツール
  4. Android SDK Platform-Tools状態更新可能として表示されます。
    チェックボックスをクリックし、Applyをクリックして更新する。 期限切れのSDKツール
  5. 変更の確認ポップアップでOKボタンをクリックし、インストールが完了するまで待つ。 SDKツールの更新確認ボックス SDKツールのインストールの

# enterキーワードは、iOS 12.xのテキストフィールドをクリアできません:

このメソッドは、テキストフィールドに文字列を入力するために使用されます。テキストフィールドをクリアしてから、文字を入力します。   iOSのバージョン12.xでのテストにxCode 11を使用する場合、このメソッドはテキストフィールドをクリアしないため、入力されたテキストは初期テキストとともにテキストフィールドに表示されます。
たとえば、フィールドに「username」というテキストが含まれていて、enter: johnを使用すると、結果は「usernamejohn」を含むテキストフィールドになります。

この問題はAppiumおよびXCode 11で発生します。一時的な解決策は、iOS 12.xでのテストにxCode 10を使用することです。
詳細については、こちらで問題レポートを参照してください。

最終更新: 2021/2/2 6:54:30