0

appiumを使って自動テスト環境を構築しようとしていますが、うまくいきません。私が見ている問題は、appium が .app ディレクトリを含む zip を抽出しているが、.app が見つからないと主張していることです。私のプラットフォームはマックです。正確なエラーは次のとおりです。

info: Unzipping /var/folders/0s/0kz_6kb13f35wxwjxkff9sdw0000gn/T/appium-app113922-2258-1ap6o7i.zip
info: Testing zip archive: /var/folders/0s/0kz_6kb13f35wxwjxkff9sdw0000gn/T/appium-app113922-2258-1ap6o7i.zip
info: Zip archive tested clean
info: Unzip successful
info: Got configuration error, not starting session
error: Failed to start an Appium session, err was: App zip unzipped OK, but we couldn't find a .app bundle in it. Make sure your archive contains the .app package and nothing else
info: Responding to client with error: {"status":6,"value":{"message":"A session is either terminated or not started","origValue":"App zip unzipped OK, but we couldn't find a .app bundle in it. Make sure your archive contains the .app package and nothing else"},"sessionId":null}

コードで何か間違ったことをしているかどうかはわかりません。以下は setup() メソッドの内容です (これは基本的に公式の例からコピーされたものです)。

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("device", "8b0949a1d3fe5d7283cc46ca5470acd67d6c5d7b");
File app = new File("/Users/user/path/to/zip");
capabilities.setCapability("version", "7.0");
capabilities.setCapability("app", app.getAbsolutePath());
driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"),
            capabilities);
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
4

2 に答える 2

0

考慮事項:

  1. .zip には .app のみを含める必要があります
  2. .app は、デバイス (iPhone) で使用されているものと同じ開発証明書を使用して XCode でビルドする必要があります。

私にとっては、このように機能しました。XCode でソースから .app を作成し、デバイスにアップロードしました。次に、Appium でアプリのバンドル ID を指定しました (正しく覚えていれば、XCode ウィンドウ > オーガナイザー > アプリ)。

于 2013-10-23T13:04:23.823 に答える
0

同様の問題を抱えている人のために:.appファイルを指定することでこの問題を修正しましたが、テストコードではなくappiumを実行するときにコマンドラインでデバイスのUDIDを指定しました。「デバイス」機能を指定するとエラーが発生すると思います(.appを探していると書いているにもかかわらず、appiumにAndroidのテストだと思わせる可能性があります)

于 2013-10-25T10:15:59.000 に答える