gpt4 book ai didi

javascript - 如何以编程方式单击打开 Javascript 窗口的小书签并验证窗口的内容?

转载 作者:行者123 更新时间:2023-11-28 21:34:50 25 4
gpt4 key购买 nike

我想打开一个特定的 URL(在 Watir/WatiN 中相对容易实现),然后单击一个书签/小书签,这会打开一个 Javascript 窗口,然后在其中显示某些链接。我希望能够验证链接的措辞和 URL。

“问题”是必须使用 IE(7 和 8)而不是 Firefox,这使我无法使用 Selenium IDE,而 Watir Recorder 似乎无法处理 Bookmarklet/Bookmark 链接。

我曾尝试使用 Wintask 部分完成此任务,但我更愿意使用常规编程语言来完成此任务,而不是专有工具/脚本语言。

最佳答案

我认为,如果您想使用诸如 Watir 或 Selenium 之类的工具,唯一的解决方案是从您的测试代码中执行书签 JavaScript。打开序号书签与导航到某个 URL 相同。

您可以从其属性中获取小书签 JavaScript。让我们来看看 List All Links书签为例。 JavaScript 是:

javascript:WN7z=open('','Z6','width=400,height=200,scrollbars,resizable,menubar');DL5e=document.links;with(WN7z.document){write('<base target=_blank>');for(lKi=0;lKi<DL5e.length;lKi++){write(DL5e[lKi].toString().link(DL5e[lKi])+'<br><br>')};void(close())}

从脚本中您可以看到打开的窗口名称是 Z6 - 我们的代码中需要它。不幸的是,我不太了解 Watir,所以我的示例是在 Selenium 2.0(又名 WebDriver )中,它是在 Java 中,但我认为同样可以在 Watir 中完成:

  WebDriver  driver = new InternetExplorerDriver();
// Open Google page
driver.get("http://www.google.com.ua/");
// Search for something
WebElement searchField = driver.findElement(By.name("q"));
searchField.sendKeys("webdriver");
searchField.submit();

// Bookmarklet script, note that javascript: was removed from original booknarklet
String script = "WN7z=open('','Z6','width=400,height=200,scrollbars,resizable,menubar');DL5e=document.links;with(WN7z.document){write('<base%20target=_blank>');for(lKi=0;lKi<DL5e.length;lKi++){write(DL5e[lKi].toString().link(DL5e[lKi])+'<br><br>')};void(close())}";

// Execute bookmarklet script
((JavascriptExecutor) driver).executeScript(script);

// Switch to the newly opened window
driver.switchTo().window("Z6");

// Find all the links in the bookmarklet window
List<WebElement> links = driver.findElements(By.tagName("a"));

// And list their text - you can do anything with them
for (WebElement link : links) {
System.out.println(link.getText());
}

driver.quit();

据我了解,您正在测试小书签。如果你需要检查页面上的链接,你可以用 Selenium 来完成(我相信 Watir 也能做到这一点:)

关于javascript - 如何以编程方式单击打开 Javascript 窗口的小书签并验证窗口的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3448846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com