PowerShell,Selenium,隐藏控制台输出

时间:2018-10-14 21:49:39

标签: powershell selenium-webdriver selenium-iedriver

我正在将Selenium与PowerShell配合使用,以在Internet Explorer中在办公室的大型显示器上启动仪表板显示。我这样启动它:

$seleniumOptions = New-Object OpenQA.Selenium.IE.InternetExplorerOptions
$seleniumOptions.BrowserCommandLineArguments = "-k"

$seleniumDriver = New-Object OpenQA.Selenium.IE.InternetExplorerDriver($seleniumOptions)

一切正常。但是,当它启动IEDriverServer.exe的实例时,您会看到一个带有调试输出的黑色控制台窗口。有没有办法从视图中隐藏此黑色控制台窗口?

谢谢。

更新-在this,mklement0和JimEvans的帮助下,我设法将其拼凑起来,并且似乎可以正常工作-谢谢:

两者之一(PowerShell 5之前的版本)

New-Variable -Name IEDS -Value ([OpenQA.Selenium.IE.InternetExplorerDriverService])
$defaultservice = $IEDS::CreateDefaultService()

或者(PowerShell 5)

$defaultservice = [OpenQA.Selenium.IE.InternetExplorerDriverService]::CreateDefaultService()

然后

$defaultservice.HideCommandPromptWindow = $true;

最后

$seleniumDriver = New-Object OpenQA.Selenium.IE.InternetExplorerDriver -ArgumentList @($defaultservice, $seleniumOptions)

1 个答案:

答案 0 :(得分:1)

.NET绑定提供了一种隐藏由IEDerverServer.exe生成的命令提示符窗口的方法。下面列出了证明C#中的代码。将其翻译成与PowerShell一起使用留给读者练习。

var service = InternetExplorerDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;

// Set IE driver options here
var options = new InternetExplorerOptions();

IWebDriver driver = new InternetExplorerDriver(service, options);
相关问题