如何使用 selenium 处理谷歌搜索 ajax 数据(在谷歌搜索中键入一些字符串,不要按回车键并在搜索文本框中检查匹配的字符串数据)?如何使用 selenium RC/Webdriver 获取这些数据?
问问题
1834 次
2 回答
0
如果您知道某些事件的操作(例如 sendKeys、onClick 等)将触发某些事件(例如 Ajax 请求),您应该使用 waitFor 直到满足您的条件(请参阅高级使用指南)。
为了避免在测试中提供脆弱的超时阈值,您可能希望在 Poll 实现中调用它,例如每 500 毫秒 10 次,然后相应地通过/失败
FitLibraryWeb 对此有一些不错的、干净的抽象,但你当然需要使用 Fitnesse
于 2012-07-23T11:02:40.553 回答
0
谢谢你的朋友..我可以使用 Firefox 驱动程序从 selenium 示例代码运行谷歌搜索:http: //seleniumhq.org/docs/03_webdriver.html#introducing-the-selenium-webdriver-api-by-example
现在,我尝试在获得搜索结果后单击左侧窗格中可用的“更改位置”,但没有运气。代码示例:
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
WebElement element = driver.findElement(By.name("q"));
element.sendKeys("Cheese!");
element.submit();
WebElement expandLocation = driver.findElement(By.id("expand_location_link"));
expandLocation.click();
调试信息:在查看源代码中,我无法看到元素 expand_location_link,但在 firefox/chrome 的元素检查部分或将页面从浏览器保存到本地系统后可见。
于 2012-07-31T14:49:14.073 回答