所以我试图做出转换到Selenium 2,但我似乎有一个问题,如果我去http://website.com,Selenium无法找到元素我的aspx形式。我需要让Selenium直接进入http://website.com/form.aspx。这并不可怕,因为我可以确保表单能够正常工作,但理想情况下,我希望它能从用户的角度完成所有事情。其他人遇到过这个问题吗?硒2无法找到元素ID,除非我直接进入.aspx文件
2
A
回答
4
似乎有一个从默认主页面重定向到您的网站form.aspx。我认为WebDriver捕获完成加载主页然后重定向到表单,但WebDriver没有捕获到这一点。
我认为,你可以开始寻找元素之前引入的延迟,也可以使用PageFactory与AjaxElementLocatorFactory,这将使你的驱动等到管制真的会出现,但我不知道它是否适用于C#
1
我也有这个问题,这是由于重定向,并且waitFor *命令不太适合重定向。它永远不会等待2页(这是我们在这里所需要的),但是如果你连续两次等待(这在理论上是正确的事情),通常第二个会挂起。它似乎是一种竞争条件,因为它是不可预知的,90%的时间似乎挂起
所以我做的只是旋转循环,直到我看到页面上的一些信号后,重定向预计会看到。您也可以将信号作为您正在寻找实际测试的控件。我的解决方案,PERL的短块,我敢肯定,你可以转化为C#:
$sel->open('/some/page/that/will/redirect/us');
$sel->wait_for_page_to_load("30000"); #wait for the redirect to hit
do {
$sel->pause(50); #now spin while we're in no-mans land
#until you spot what you need:
last if $sel->is_text_present('This is the Real Home Page');
} while(1);
#carry on.... redirect is completed and page is loaded
的这种快乐的好处是,命令历史记录计数的“相同的命令(99ms)的毫秒: xyz“,让你知道一切都是活着和健康的,而重定向则是顺其自然的。
相关问题
- 1. 硒与Python:无法通过链接文本找到元素
- 2. 硒2的webdriver无法找到链接
- 3. 硒C#无法找到元素
- 4. 无法找到框元素硒和Python
- 5. 无法找到网页元素硒
- 6. 使用硒无法找到使用ID的元素
- 7. 硒web驱动程序。无法通过ID找到元素,xpath
- 8. 硒元素找不到元素,除非我逐个执行命令
- 9. 硒Webdriver没有这样的元素:无法找到元素
- 10. 无法找到输入元素在div下的硒
- 11. 无法通过ID找到元素
- 12. Javascript无法找到元素ID
- 13. 无法找到html元素ID
- 14. 酶 - 芒无法找到id元素
- 15. 无法使用硒查找html元素
- 16. 滚动直到通过硒中的链接文本找到元素
- 17. 我无法找到进程ID
- 18. 放置片段后无法直接找到片段的元素
- 19. 我的CodeIgniter 3.0.3模型文件无法找到,除非lcfirst(example_model.php)
- 20. 元素未找到 - 硒
- 21. 硒找不到元素
- 22. 硒没有找到元素
- 23. 找不到元素硒python
- 24. jQuery选择器无法通过ID找到我的元素
- 25. 我无法找到在html源页面内的Id元素Selenium
- 26. 硒2无法连接到主机
- 27. 我无法找到html元素的xpath
- 28. 无法找到元素:org.openqa.selenium.NoSuchElementException
- 29. find_element_by_id无法找到元素
- 30. 无法找到元素