在C#selenium测试运行时打开Goog​​le Chrome开发人员工具控制台,或以编程方式阅读

时间:2014-05-06 14:35:47

标签: c# google-chrome testing selenium-webdriver google-chrome-devtools

有没有办法告诉WebDriver在C#Selenium测试中打开Chrome开发人员工具控制台,或者在运行Selenium测试时让控制台打开而不破坏它们的其他方法?
或者能够以编程方式将输出读取到控制台? 到目前为止,我已经尝试在测试运行时手动打开控制台( CTRL + SHIFT + I ),但这确实每次都打破了测试

1 个答案:

答案 0 :(得分:2)

打开chrome控制台:

var inSim = new WindowsInput.InputSimulator()

inSim.Keyboard.KeyDown(WindowsInput.Native.VirtualKeyCode.LCONTROL);
inSim.Keyboard.KeyDown(WindowsInput.Native.VirtualKeyCode.LSHIFT);
inSim.Keyboard.KeyPress(WindowsInput.Native.VirtualKeyCode.VK_J);
inSim.Keyboard.KeyUp(WindowsInput.Native.VirtualKeyCode.LSHIFT);
inSim.Keyboard.KeyUp(WindowsInput.Native.VirtualKeyCode.LCONTROL);
  • 您可以做什么:拍摄浏览器的快照(包括打开的控制台)。
  • 你不能做什么:使用webDriver(它会使测试崩溃,但是如果关闭控制台,就像你打开它一样,你将能够继续)
  • 为什么:selenium需要与DevTools的独占连接。

注意 - 某些操作系统有严格的输入规则,可能会阻止inputSimulator在计算机被锁定时或在没有连接键盘的计算机上运行此代码时工作(处理的服务器)远程)

希望这会有所帮助...