新的geckodriver v0.17.0有一种新的方法来安装插件,如下所述:
POST /session/{session id}/window/fullscreen to invoke the window manager-specific full screen operation
POST /session/{session id}/moz/addon/install to install an extension [Gecko only]
POST /session/{session id}/moz/addon/uninstall to uninstall an extension [Gecko only]
如何使用这些端点将我的插件安装到 Firefox 进行硒测试?
你必须知道壁虎驱动程序启动的IP和端口。一旦壁虎驱动程序启动,您就可以从驱动程序实例获取会话 ID。
您可以获取此处提到的IP地址和端口
例如:如果 ip 和端口是
本地主机:15874
会话 ID 为1E53412A-05EB-40A9-8A7B-BB8DD6FD75AB
然后,您可以将 json 消息发布到
http://localhost:15874/session/1e53412a-05eb-40a9-8a7b-bb8dd6fd75ab/moz/addon/install
帖子消息的正文应为
{
"path":"xxyy.xpi",
"temporary":true
}
以防有人需要从 .NET 客户端使用它 (因为它尚未实施(
Public Class MyFirefoxDriver
Inherits OpenQA.Selenium.Firefox.FirefoxDriver
Public Sub New(fo As OpenQA.Selenium.Firefox.FirefoxOptions)
MyBase.New(fo)
MyBase.CommandExecutor.CommandInfoRepository.TryAddCommand("moz-install-web-ext", New CommandInfo(CommandInfo.PostCommand, "/session/{sessionId}/moz/addon/install"))
End Sub
Public Sub InstallWebExtension(path As String)
Dim params As New Dictionary(Of String, Object)
params.Add("path", path)
params.Add("temporary", True)
MyBase.Execute("moz-install-web-ext", params)
End Sub
End Class