Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 尝试获取链接/浏览器的WatiN_C#_.net_Watin - Fatal编程技术网

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

C# 尝试获取链接/浏览器的WatiN,c#,.net,watin,C#,.net,Watin,我最近开始测试和使用WatiN,遇到了一些我无法真正解决的问题/错误 首先,我来描述一下我在做什么测试。。 我将去获取列表中特定div中的所有链接。。。所以我有一个链接列表。。。我会循环通过。。。 在循环中,我将使用link.clicknowait()函数打开该链接(它将在新的ie选项卡中打开)。。然后我休眠线程几秒钟,然后通过将链接(url)附加到新浏览器来关闭浏览器,之后浏览器关闭,因为我总是使用“using(…)”语句来使用它 因此,第一个问题是,当浏览器获取所有链接并开始单击它们时,其中

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

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

因此,第一个问题是,当浏览器获取所有链接并开始单击它们时,其中一个链接可能指向不正确的页面,这意味着它可能指向一个页面,该页面表示页面不再存在,因此在此之后,我无法再关闭该页面。。。如何解决这个问题并攻击ie到那个不存在的页面? 它没有固定的url。。。有什么可以推荐的吗

是否有一种类似“Try attach to…”的方法,因为如果它试图攻击一个不存在的链接的浏览器,我会得到一个错误

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

最后一个问题是,在点击大量链接并打开和关闭浏览器后,我从MemoryException中得到了一个错误。。怎么可能呢,我用了“using语句”,它总是在浏览器不可用时关闭浏览器


提前感谢您的帮助。

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

像这样的事情:

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();