6

たとえば、私は持っています:

wd.findElement.By(name("searchBttn"));

ui xml スクリーン キャップのリソース ID は com.aut.android:id/searchBttn

そしてAppiumはアイテムを見つけることができません。私はIDと名前で試しました。ここで他に試してみることができるものはありますか?行相関リストの直接行がどこかにありますか?

4

4 に答える 4

7

リソース ID で Appium の Android アイテムを見つけることができますが、リソース ID とともにパッケージ名全体を指定する必要があります。

wd.findElement.By(id("com.aut.android:id/searchBttn"));
于 2014-02-10T22:58:50.947 に答える
1

少なくとも名前は私にとってはうまくいきます。IDの仕組みを調べようとしていますが、以下をご覧ください。

例: ボタンのテキストが「testbtn」に設定されている場合、次のコマンドで Appium からアクセスできます。

driver.findElement(By.name("testbtn")).click();

これは私にとってはうまくいきます、試してみてください。

編集: Appium 開発者の 1 人がここで述べているように、現在 Android では ID で要素にアクセスできないようです。

EDIT2: この機能が実装されました! 私が知ったように、Android から selendroid を使用して ID で要素にアクセスできるようになりました (これは Appium のサブ部分のようです)。

capabilities.setCapability("device", "selendroid");テストクラスでは、代わりにセットアップ時に指定する必要がありますcapabilities.setCapability(CapabilityType.BROWSER_NAME, "Android");

これで、ボタンにアクセスできます

driver.findElement(By.id("testbtn")).click();

ここでSelendroidの公式ドキュメントを見つけることができます

于 2013-10-16T12:17:32.993 に答える