从c#硒运行Opera浏览器

时间:2019-04-01 22:28:35

标签: c# selenium selenium-webdriver opera

我正在使用C#,Selenium(3.141.0)和MSTest.TestFramework来测试一个相当复杂的网站项目。我的目标很简单-在适用于该网站(在全球范围内使用)的各种浏览器中测试该网站。

从Selenium驱动Chrome,Firefox和IE,并将驱动程序转换为iWebDriver都没问题。但是我还想测试和支持Opera-在美国并不普遍,但在其他地方却很普遍。

我看到的文章表明Opera是受支持的,但我无法使其正常工作。

核心是-但失败了: iWebDriver驱动程序=新的OperaDriver(); 我认为我缺少一些参数,例如Opera驱动程序的路径(operadriver.exe-从https://github.com/operasoftware/operachromiumdriver/releases下载)或OperaOptions。

我将不胜感激任何示例代码指南。在线上有很多关于该主题的文章-但我尚未找到任何有效的代码。


自从几天前发布此消息以来,我尝试了一些事情并终于使它起作用,并且由于我还没有看到任何其他解决方案,所以我正在分享....

它正在工作,但是不完美。

步骤1-我从以下位置下载了相应的operadriver.exe二进制文件:https://github.com/operasoftware/operachromiumdriver/releases

我将operadriver.exe移到了“ C:\ Opera \”。

在我的代码中,我已经设置了一个名为driver的iWebDriver对象。

Opera已安装在我的系统上的默认位置-如下所示。

这是起作用的代码...

using OpenQA.Selenium;
using OpenQA.Selenium.Opera;
using OpenQA.Selenium.Support.UI;

OperaDriverService service = 
 OperaDriverService.CreateDefaultService(@"C:\Opera\","operadriver.exe");

 var operaOptions = new OperaOptions
   {
    BinaryLocation = 
   @"C:\Users\username\AppData\Local\Programs\Opera\58.0.3135.127\opera.exe",
                            LeaveBrowserRunning = false
   };

   driver = new OperaDriver(service, operaOptions);

到目前为止,我知道的不完善之处是显示了“管理扩展”弹出窗口-到目前为止,我一直无法抑制它-并且不想抑制所有弹出窗口,因为该站点确实在其中生成了一些警报/弹出窗口某些可测试的情况。

我每个人都有抑制该弹出窗口的想法,感谢您的分享。

0 个答案:

没有答案