当c# selenium测试正在运行时打开Google Chrome开发人员工具控制台,或以编程方式读取它

本文关键字:控制台 工具 读取 方式 编程 开发 测试 selenium 运行时 Chrome Google | 更新日期: 2023-09-27 18:01:52

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

打开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在计算机被锁定或在没有键盘连接的机器(远程处理的服务器)上运行此代码时工作

当c# selenium测试正在运行时打开Google Chrome开发人员工具控制台,或以编程方式读取它