2016-03-22 13 views
0

提案を与えることができますか(画像を参照してください)selectIndicatorが1つのブロックに存在するかどうかを確認してから別のブロックを選択する必要があります。私はその要素がページ全体に存在するかどうかをチェックする方法を知っていますが、特定の要素に存在するかどうかを調べる必要があります。私の例では、リビングルームを選んだので、DVRが選択されていないかどうか確認する必要があります。どのように私はそれを行うことができます考え?私はこの方法をチェックしようとしているが、ない幸運た:Appium:相対要素の存在を確認する

WebElement element= driver.findElementByAccessibilityId("First element").findElementByAccessibilityId("Second element"); 

[http://i.stack.imgur.com/F98DM.png]

+0

[Appiumテストで "if"演算子を使用する方法]の複製可能性(http://stackoverflow.com/questions/36004961/how-to-use-if-operator-for-appium-tests) – econoMichael

+0

重複する。あなたのソリューションは、isPresentまたはisDisplayedを使ってページ上に存在する要素をチェックします。しかし、要素が特定のロケータ(Xpathまたはid)に存在するかどうかが必要です。これをどのように実装すればよいのでしょうか? –

+0

要素の属性を見つけて、WebElement wのような期待される要素と一致させることができます。 \t \t w.getAttribute(arg0に) \t \t w.getCssValue(arg0に) \t \t w.getTagName() –

答えて

0

私はあなたが間違って取得しておりません場合は、あなたが適切な解決のための自己定義されたデータ構造を実装したいです。これは次のようなものです:

public class DVRList { 
//declare components required to comprise one item 
private String dvrOptionText ; 
private boolean dvrOptionCheck ; 
// implement setter..getter for these two 
} 

...in some method set the value using the logic 
DVRList dvrlist = new DVRList(); 
WebElement parentOfBoth = driver.findElement(By.xpath(" 
//android.widget.RelativeLayout[1]/android.widget.R‌​elativeLayout[1]"); 
String text = parentOfBoth.findElementByAccessibilityId("First element").getText(); 
dvrlist.setdvrOptionText(text); 
if(isElement(parenOfBoth.findElementByAccessibilityId("Second element")) 
dvrlist.setdvrOptionCheck(true); 
else dvrlist.setdvrOptionCheck(false); 

これらのパラメータは、それに応じて使用できます。

注::パラメータとアプローチは一般化されており、正確な目的を果たすために変更する必要があります。

関連する問題