是否可以在没有特定元素ID的文本框中输入文本

时间:2013-11-20 10:22:08

标签: java selenium selenium-webdriver browser-automation

我正在进行测试,在文本框中输入文本,但它没有特定的ID,所以每次运行测试时它都会改变。我在java中使用selenium webdriver请帮忙

2 个答案:

答案 0 :(得分:2)

以下内容可行。你可以谷歌搜索它们,看看它们是如何工作的。

driver.findElement(By.id("id"));
driver.findElement(By.cssSelector("cssSelector"));
driver.findElement(By.name("name"));
driver.findElement(By.linkText("linkText"));
driver.findElement(By.partialLinkText("partialLinkText"));
driver.findElement(By.className("className"));
driver.findElement(By.xpath("xpath"));

我相信其中一些会很有用。如果您想了解更多信息,请告诉我。 使用它们的容易程度是我提到的顺序。

答案 1 :(得分:1)

什么方法没有特定的ID?如果id至少部分保持不变,你可以使用CSS定位器

driver.findElement(By.cssLocator("input[id*=somePartWhichNotChange]"));
//* star means contains

如果没有,那么您可以使用cssSelector来访问您的元素"body table input"或使用xpath作为最后的手段。