2012-09-17 47 views
0

我需要自动点击按钮。代码:Selenium只在手动点击执行时才发现元素

<tr> 
<td>click</td> 
<td>css=button</td> 
<td></td> 

当我点击“播放当前的测试案例”不找到的元素。但是当我点击“查找”之后 - 它确实如此,如果我点击执行 - 它会点击它! 日志:

[info] Executing: |click | css=div.sometag > p | | 
[info] Executing: |pause | | 2000 | // Same error with pause & without it 
[info] Executing: |clickAndWait | css=button | | // Auto executing 
[error] Element css=button not found // Fails 
[info] Executing: |click | css=button | | // I click on "Execute" manually - OK! 

为什么?

回答

1

您是否尝试插入“waitForElementPresent | css = button |”在点击声明之前?这可能有帮助。

实际上您需要使用类选择器。所以要么div.button.button,否则硒可能正在寻找一个ID或元素名称。

+0

元素存在,但Selenium挂在:[info]执行:| waitForElementPresent | css = button | | – arts777

1

您也可以尝试使用不同类型的定位器,例如ID或XPath。

如果我们能够看到您正在与之交互的页面的HTML,我们可以提供确切的示例。