在appium中查找元素

时间:2016-02-01 14:18:31

标签: android xpath appium

如何在线性布局中找到具有特定索引的元素,如在图像中获得此元素android.widget.EditText,其中包含索引3.当我尝试使用搜索参数找到它时:  
driver.FindElement(By.XPath("//android.widget.EditText[@index='3']")).SendKeys("123");
我也试过这个 driver.FindElementByXPath("//*[@class='android.widget.EditText' and @index='3']").SendKeys("123");

我得到了这个例外 {"An element could not be located on the page using the given search parameters."}

如何选择此元素?

2 个答案:

答案 0 :(得分:1)

由于涉及索引,我建议你将元素标识符放在一个列表中,然后获取索引并单击。请尝试以下代码

List<WebElement> list= driver.findElements(By.XPath("identifier"));
System.out.println("size of List= " + list.size());
        list.get(3).click();

答案 1 :(得分:0)

你所拥有的是driver.FindElement(By.XPath("//android.widget.EditText[@index='3']")).SendKeys("123");,它是按属性搜索xpath的语法,其中@attribute是属性。但是,对于索引来说,它更简单。只需driver.FindElement(By.XPath("//android.widget.EditText[3]")).SendKeys("123");