操作profile对象和Selenium RC (c#)
本文关键字:RC Selenium profile 对象 操作 | 更新日期: 2023-09-27 18:17:40
我尝试在opera中使用selenium-server-standalone- 2.30.3 .jar,并且需要更改一些配置文件首选项。可以在c#项目中创建OperaProfile对象,并像这样使用它:
OperaProfile profile = new OperaProfile(); // Error: Type or namespace 'OperaProfile' could not be found
profile.preferences().set("User Prefs", "Ignore Unrequested Popups", false);
DesiredCapabilities capabilities = DesiredCapabilities.Opera();
capabilities.SetCapability("opera.profile", profile);
IWebDriver driver = new RemoteWebDriver(new Uri("http://host:4444/wd/hub"), capabilities);
在这种情况下,我得到错误信息
类型或命名空间'OperaProfile'找不到
假设您使用的是Windows:
操作驱动程序是用Java编写的,c#不直接支持,因为它不是由Selenium项目团队维护的,而是由Opera维护的。
要使用它,您必须在开始测试之前运行独立的Selenium web服务器(从windows上的控制台)。点击这里查看
您需要将OPERA_PATH设置为指向您的opera.exe文件。使用以下命令启动服务器:
java -jar selenium-server-standalone-2.33.0.jar
我使用一个小bat来完成这两个任务:
SET OPERA_PATH="C:'Progra~2'Opera'opera.exe"
cd C:'pathToSeleniumJarFile
C:'Progra~2'Java'jre7'bin'java.exe -jar selenium-server-standalone-2.33.0.jar
C #:在你的c#代码中测试remotewebdriver对象来连接它。
switch (WebBrowser)
{
case Browser.Chrome:
// chromedriver.exe has to be in the debug folder
ChromeOptions chrome = new ChromeOptions();
chrome.AddArguments("--ignore-certificate-errors");
webDriver = new ChromeDriver(chrome);
break;
...
case Browser.Opera:
//note: set OPERA_PATH environment variable (in cmd or global)
DesiredCapabilities opera = DesiredCapabilities.Opera();
opera.SetCapability("opera.profile", @"C:'OperaProfile");
webDriver = new RemoteWebDriver(opera);
break;
default:
throw new NotImplementedException();
如果你想操作opera客户端的配置文件(例如接受不受信任的证书等),你需要设置
opera.SetCapability("opera.profile", @"C:'OperaProfile");
将现有配置文件复制到您选择的位置,这里是C:'OperaProfile。
==>避免在所有路径中使用空格<==