之前使用powershell写了一些使用IE自动化测试的脚本,其核心是建立一个IE的comobject,调用这个object来执行各项操作。
现在要把测试放到Edge的时候有些想不明白的问题。Edge不支持new-object -comobject的创建方式,它需要使用mocrosoft webdrive这个东西,同时powershell要调用这个东西需要安装Selenium。
在Selenium和Microsoft webdrive都安装完成的情况下,使用下面的语句来建立一个Edge的object,然而在创建的时候报错了。
Add-Type -Path “C:\selenium\net40\WebDriver.dll”
$driver=New-Object OpenQA.Selenium.Edge.EdgeDriver(“C:\Program Files (x86)\Microsoft Web Driver”)
$driver.url=”www.google.com”
在第二句的时候,一个Edge空白页被创建了出来,但是紧接着报了这样一个error,窗口就关闭了,思来想去没弄明白,不知道有没有搞过Edge自动化的同学能帮个忙。已经在防火墙入栈规则里允许了所有local port的访问。
PS C:\WINDOWS\system32> $driver = New-Object OpenQA.Selenium.Edge.EdgeDriver(“C:\Program Files (x86)\Microsoft Web Driver”)
Starting server…
Fully qualified URI to listen on: http://localhost:3637/
Waiting for new request…
Received a request for http://localhost:3637/status
Waiting for new request…
Received a request for http://localhost:3637/session
Waiting for new request…
New-Object : Exception calling “.ctor” with “1” argument(s): “unknown error”
At line:1 char:11
+ $driver = New-Object OpenQA.Selenium.Edge.EdgeDriver(“C:\Program File …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [New-Object], MethodInvocationException
+ FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand