需要 C# 打破 Selenium 第一次机会异常
Posted
技术标签:
【中文标题】需要 C# 打破 Selenium 第一次机会异常【英文标题】:Need C# to break on Selenium first chance exceptions 【发布时间】:2013-07-05 14:38:48 【问题描述】:我正在通过 Visual Studio 调试 Selenium 测试套件。我希望抛出/捕获的异常能够中断,以便找出缺少的内容,但我是 C#/Visual Studio 的新手,不知道该选择什么。
一个示例异常块:
The thread '<No Name>' (0x75ac) has exited with code 0 (0x0).
A first chance exception of type 'OpenQA.Selenium.NoSuchElementException' occurred in WebDriver.dll
A first chance exception of type 'OpenQA.Selenium.NoSuchElementException' occurred in Selenium.WebDriverBackedSelenium.dll
A first chance exception of type 'Selenium.SeleniumException' occurred in Selenium.WebDriverBackedSelenium.dll
The thread '<No Name>' (0x7250) has exited with code 0 (0x0).
我应该选择什么让它在那些第一次机会异常时停止,以便我可以修复代码?
谢谢!
【问题讨论】:
您是在 MsUnit 中使用 build 还是在 NUnit 之类的其他东西中使用? 我们使用 NUnit 和 .NET Selenium WebDriver 构建。 在这种情况下,您需要将 Visual Studio 调试器附加到 NUnit 进程。在 Visual Studio 菜单中,转到 Debug -> Attach to process... 并选择 nunit 【参考方案1】:如果您选择 DEBUG -> Exceptions,将出现一个窗口,其中包含异常类型列表和 2 列,Thrown 和 User-unhandled。确保为公共语言运行时异常选择了“抛出”列(如果 Selenium 是 clr)。这将导致调试器因使用 try/catch 管理的异常而中断。
编辑
您可能还需要选择调试 -> 选项和设置,然后在调试 -> 常规中,取消选择“仅启用我的代码”。不过要小心,这将导致立即下载 .NET 框架源代码的符号,或者在您下次开始调试时下载。
【讨论】:
以上是关于需要 C# 打破 Selenium 第一次机会异常的主要内容,如果未能解决你的问题,请参考以下文章
mscorlib.dll 中出现了“System.ArgumentOutOfRangeException”类型的第一次机会异常
System.Data.dll 中出现“System.InvalidOperationException”类型的第一次机会异常