sendKeys()不能与表列webelement一起使用

时间:2013-04-24 07:46:44

标签: selenium

问题:无法在表格中使用sendKeys。

我在做什么:我有从dojo创建的表。能够得到列,当我打印它们时,我可以看到每列的值。我想为列设置值,在我的情况下是第二列作为某个值,我想将其设置为“testselenium”字符串。 sendkeys工作正常但不是在这种特殊情况下。

我使用Java来使用selenium进行测试。

以下是我尝试使用的一段代码。

<pre><code>

    List<WebElement> findElements = driver
            .findElement( By.xpath("//div[starts-with(@id,'mytable')]"))
            .findElement( By.xpath("//div[starts-with(@class,'dojoxGridContent')]"))
            .findElements(By.tagName("td"));

    // Got the column elements

    Iterator<WebElement> iterator = findElements.iterator();
    int counter = 0;
    // Iterating over column i.e. td elements
    while(iterator.hasNext()){
        counter++;
        WebElement next = iterator.next();
        if(counter == 2){
            Actions action = new Actions(driver);
            action.doubleClick(next);
            action.perform();
            next.sendKeys("testselenium");
            break;
        }
        System.out.println(next.getText());
    }

</pre></code>

有没有人有相同的想法。

1 个答案:

答案 0 :(得分:0)

<pre>
if(counter == 2){
Actions action = new Actions(driver);              
action.doubleClick(next);                        
**action.sendKeys("testselenium");**
action.perform();
break;
}     
</pre>

在执行调用之前使用sendKeys执行调用为我做了诀窍。