java - Selenium assertText 用于表中的所有文本?

标签 java xpath junit selenium selenium-rc

我需要通过 selenium IDE 或 Java 测试用例断言表中的每一行都包含特定的文本字符串。最好的方法是什么?这是我当前的测试:

Command    assertText
Target     //table[@id='myTable']//tbody//tr[not(@style)]/td[1]
Value      myValue

我需要测试每一行的第一列,但这仅测试第一行。有没有一种简单的方法来测试每一行?

最佳答案

我没有使用selenium IDE,只使用过java API,所以这里是我如何在java中做到这一点(或者至少是基本的想法)

int numRows = selenium.getXpathCount("table[@id='myTable']//tbody//" + 
        "tr[not(@style)]/td[1]").intValue();
String[] values = new String[numRows];
for (int i = 0; i < numRows; i++) {
    values[i] = selenium.getText("table[@id='myTable']//tbody//" +
            "tr[not(@style)][" + i + "]/td[1]");
}

关于java - Selenium assertText 用于表中的所有文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3372462/

相关文章:

java - 如何在 Spring 中为 Autowiring 指定默认 bean?

xml - 如何应用XPath函数 'substring-after'

Xpath 找出具有任何文本的元素

junit - 在 Assert 上使用哪个 JUnit 包?

java - Glassfish 嵌入式无法部署 EJB 模块

java - 自动为 Junit 创建数据

java - 使用eclipse重建maven索引没有进展

java - xmlPath 无法从 xml 中获取要列出的特定对象

java - Hibernate:如何使用 HQL 选择空对象?

xslt - 用于选择不在给定 namespace 中的属性的 XSL/XPath 语法