c# - 使用 MS Edge 驱动程序进行 C# Selenium 测试
问题描述
我正在使用 C#、Microsoft.VisualStudio.TestTools.UnitTesting 和 Selenium 来测试网站。
我知道 MS Edge 不再被开发,正在被基于 Chromium 的产品所取代。在此期间,我仍然希望能够告诉我的客户 Edge 是受支持的浏览器,直到更换发生。
但看起来使用 selenium EdgeDriver 需要一个有效的 microsoftwebdriver - 最新版本与最新版本的 Windows 不兼容 - 我的机器使用 Windows 10 版本 1809 / build 17763.379。
有没有人能够在 Windows 10 build 1809 机器上使用 Selenium 进行 Edge 测试?如果是这样,请显示一些示例代码和所需的步骤/参考/使用/等。
如果看到一些关于此的帖子,其中一些回复说这是不可能的,而其他人则说这是可能的——但那些说有可能的帖子并没有显示任何实际的代码或参考名称。
解决方案
我向所有没有发布我最终找到的解决方案的读者道歉——这很简单。下面是实例化驱动的代码:
var service = OpenQA.Selenium.Edge.EdgeDriverService.CreateDefaultService(@"C:\Drivers", @"msedgedriver.exe");
service.UseVerboseLogging = true;
service.UseSpecCompliantProtocol = true;
service.Start();
var options = new OpenQA.Selenium.Edge.EdgeOptions();
// For future reference - please check to see if there are options that should be set...
driver = new RemoteWebDriver(service.ServiceUrl, options);
如您所见,我将最新的边缘驱动程序保存在名为“C:\Drivers”的目录中。始终可以从 selenium 网站下载页面 ( https://www.selenium.dev/downloads/ ) 下载最新的驱动程序 - 展开该页面上的浏览器部分。
推荐阅读
- python - 试图访问python中的嵌套字典键
- amazon-web-services - Amazon S3 存储桶索引?
- django - 如何以编程方式访问对象的 Django related_name QuerySet
- reactjs - 为什么 React.js 不在新窗口中单独显示我的组件?
- arrays - 为什么下面的代码只是通过将比较运算符从 &&(AND) 更改为 ||(OR) 来给出堆溢出错误?
- spring - 如何在使用@RequestMapping(Spring Boot)注释的方法中返回html视图和特定ID
- python - “startfile()”函数在 Python 3.9.7 中不起作用
- javascript - p5 tiledmap 卡在加载中
- amazon-web-services - AWS API 网关缓存 - 使租户的所有用户的缓存无效
- angular - 在按钮单击时显示表格