尝试获取链接/浏览器的WatiN

本文关键字:浏览器 WatiN 链接 获取 | 更新日期: 2023-09-27 18:17:14

我最近开始测试和使用WatiN,并且我遇到了一些我无法真正解决的问题/错误。

首先我要描述一下我在做什么测试…我将在一个列表中获取特定div中的所有链接。我有一个链接列表。我要循环…在循环中,我将使用link. clickknowait()函数来打开该链接(它将在一个新的ie选项卡中打开)。然后我睡线程像几秒钟,我关闭浏览器通过附加该链接(url)到一个新的浏览器,之后浏览器关闭,因为我总是使用'using(..)'语句。

所以第一个问题是,当浏览器获得所有链接并开始点击它们时,其中一个链接可能不是正确的页面,这意味着它可能导致一个页面说页面不再存在,所以之后我不能再关闭该页面了…如何解决这个问题并攻击ie到不存在的页面?它没有固定的url…有什么可以推荐的吗?

是否有一种方法,如"尝试连接到....",因为如果它试图攻击浏览器到一个不存在的链接,我会得到一个错误。

也有无论如何检查链接列表中的链接是否仍然是正确的,因为我也有例外的几次,它无法点击该链接,因为它在页面中是空的…或者我可以检查像link.trytoclick()这样的东西,如果出现错误,只是忽略该链接并进一步??

和最后一个问题后点击了很多链接,打开和关闭浏览器,我得到了一个错误outofmemoryexception ..怎么可能,我已经使用了'using语句',它总是关闭浏览器,当它不在它…

提前感谢您的帮助。

尝试获取链接/浏览器的WatiN

您可以在等待会话的同一窗口中使用href打开链接,验证链接后您可以返回原始页面。

像这样:

string href = browser.Link("link_id").GetAttributeValue("href"); //or your link from the collection
browser.GoTo(href);
//Perform you check
browser.Back();

查看链接是否存在:

  session.browser.Back();