0

ブラック ボックス テストを行っている場合に備えて、この質問をします。
Robotiumについて数日間調査しました。私はインターネットから独学で学びます。
また、いくつかの簡単なテストケースを作成し、正常に実行しました。しかし、インデックス要素を検索するとき (例: Edittext、0 から x までのインデックス形式でインデックスを試行し、予想されるインデックス ID を取得する必要があります)。
フォーム名を取得する別の方法はありますか。ID 名 (txtEd1、btnLogin...) があり、ホワイト ボックス テストで R クラスからアクセスできますが、この場合はブラック ボックスについて質問します。
ID で要素を取得する別の方法や、アクティビティ内の要素の正確なインデックス番号を取得する方法はありますか。
また、DDMS および SDK ツールの Hierarchy Viewer を使用してインデックス ID を取得しましたが、機能しませんでした。

TextView tw = (TextView) solo.getText(<index>); << how can get exact index number?

DDMS の階層ビューア SDK ツールの Hierarchy Viewer

4

2 に答える 2

1

ビューをループして正しいビューを見つける別の方法を試すことができます。まず、すべてのビューを取得してから、以下のようにループする必要があります。

views = solo.getCurrentViews();

for (int i = 0; i < views.size(); i++) {
    if (views.get(i).getClass().getName().equals("android.widget.TextView")) { 
        tw = (TextView) views.get(i); //DO-YOUR-CHECK-BLABLABLA
    } 
}
于 2015-03-31T12:58:25.617 に答える
1

私は現在、大気フレームワークを使用しています。このフレームワークを使用すると、セレクターを作成することにより、リソース ID、インデックス、コンテンツの説明、テキストなどによって要素を選択できます。また、Css/xPath クエリで要素を選択することもできます。例えば:

...
UiElementSelector selector = new UiElementSelector();
selector.addSelectionAttribute(CssAttribute.INDEX, "your index");
screen.waitForElementExists(selector, WAIT_FOR_ELEMENT_EXISTS_TIMEOUT);
UiElement targetElement = screen.getElements(selector).get(0);  
...

ここでさらに良い例を見つけることができます。

于 2016-11-14T16:24:36.753 に答える