C#Selenium webdriver JavaScript错误记录

我正在使用C#测试Selenium webdriver。 如何记录我的测试中可能发生的所有JavaScript错误?

这取决于你的意思,如果你想在你使用时捕获代码中生成的javascript错误:

((IJavaScriptExecutor)_driver).ExecuteScript("some javascript code here")

然后将这些语句包装在try / catch / finally中并记录exception。

如果你想捕获浏览器生成的javascript错误,那么简短的回答是:你不能轻易这样做。

答案很长:

  1. 使用Firefox驱动程序
  2. 使用自定义配置文件实例化它
  3. 安装Firebug和ConsoleExport插件
  4. 通过SetPreference()适当配置这些插件,以便它自动将控制台导出到您选择的位置

如果你需要一些示例代码,请告诉我,我会给你长的回答……

关于上述回复的一些注释,您应该通过使用webdrivers内置方法来获取测试执行期间生成的javascript错误:

 Driver().Manage().Logs.GetLog(); 

通过指定您感兴趣的日志,您可以获取浏览器日志,即:

 Driver().Manage().Logs.GetLog(LogType.Browser); 

这将返回一个ReadOnlyCollection,其中包含来自webdriver浏览器窗口的所有日志条目。