51Testing软件测试论坛

标题: selenium webdriver通过同行的一个元素查找另一个元素的问题 [打印本页]

作者: lm2003876    时间: 2015-7-12 15:30
标题: selenium webdriver通过同行的一个元素查找另一个元素的问题
已经定义了一个tboday,想要通过同行的一个元素a 取得另一个元素b 的值。代码如下:
public String getUBIByMakeValue(String name) {
                return listPreconfigVehicle.findElements(By.tagName("tr")).get(getTableSectionIndexByMessage(listPreconfigVehicle.findElement(By.tagName("tr")), name)).findElements(By.tagName("td")).get(1).getText();
        }
       
        public static int getTableSectionIndexByMessage(WebElement table,String message){
                try {
                        List<WebElement> rows = table.findElements(By.tagName("tr"));
                        for(int i = 0; i< rows.size(); i++){
                                for(int j = 0; j < 5; j++){
                                        if(rows.get(i).findElements(By.tagName("td")).get(j).getText().equals(message)){
                                                return i;
                                }
                        }}
                        throw new NotFoundException("[getTableSectionIndexByMessage] Message: "+message+" , don't exist in table ");
                } catch (NoSuchElementException e) {
                        throw new NoSuchElementException("Table don't exists: " + e.getMessage(), e);
                }
        }


但最后运行时,总是显示元素a don't exist in table。 急求大神帮忙分析啊
作者: jingzizx    时间: 2015-7-13 13:55
看函数getTableSectionIndexByMessage,好像没什么问题
建议楼主把(rows.get(i).findElements(By.tagName("td")).get(j).getText()值都打印出来,看看取值是否正确




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2