问题标签 [mutablecapabilities]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1642 浏览

selenium - 如何解决“不推荐使用构造函数 ChromeDriver(Capabilities)”和 WebDriverException:ChromeDriver 和 Chrome 超时错误

我正在尝试如下配置默认下载目录,它工作正常,但我有两个问题:

  1. 它告诉我构造函数 ChromeDriver(Capabilities) 已被弃用
  2. 当我多次重播测试时,它恰好有一个 Webdrive TimeOut 异常

    /li>
0 投票
2 回答
5761 浏览

java - 如何通过 Selenium 和 Java 使用 setCapability() 忽略 Internet Explorer 的受保护模式设置?

我正在尝试使用 IE 在 java selenium 中进行测试,但我的问题是我必须继续在受保护模式下配置设置,这是已弃用功能的替代方法

因为我希望在没有人工交互的情况下实现自动化。我在 Eclipse 中使用此代码,它在我的代码中根本没有任何效果,上面用黄线荧光笔划掉,表示它已被弃用。那么是否有一个新功能可以实现这一点,这是我一直用于完整性检查的代码

0 投票
1 回答
936 浏览

java - Selenium 中所有浏览器选项类的通用选项对象

我之前使用 DesiredCapabilities 类创建一个通用方法来设置浏览器的所有功能,使用外部文件(key=value 格式)。这是我的代码

我发现它建议使用选项类,因为某些功能类将被弃用。所以我试图用一种适用于所有 Options 类的不同方法替换这个方法

  • Firefox 选项
  • Chrome选项
  • InternetExplorer 选项
  • Safari 选项
  • 边缘选项

我找不到上述所有类的通用对象类型,因此我可以创建一个使用 DesiredCapabilities 的类似方法。

我想从这个新方法返回一个通用对象类型,以便我可以将它用于所有驱动程序初始化,例如

0 投票
1 回答
521 浏览

javascript - 使用量角器测试套装名称设置 browserName

我正在尝试使用量角器测试套件名称设置浏览器名称。因为我正在使用诱惑记者进行测试报告。但问题是我一直在获取浏览器名称“未定义”。到目前为止,我已经在异步方法中实现了浏览器名称,我想在 suitstarted 中使用该方法。suitstarted 方法是同步的。我无法将西装设置为异步。这样我怎么能等待suitstarted方法并在suit.fullname之后获取浏览器名称。从过去三天开始,我真的被这个问题所困扰,因此我对 Javascript 非常陌生。

这是我的代码

已编辑

引诱的 index.js 是

而 Suit.js 是

如何在 suit.fullname 的末尾设置 browserName。有没有其他方法可以做到这一点。

错误

0 投票
2 回答
3918 浏览

java - 如何通过 Java 使用 Selenium 将功能和选项传递给 Firefoxdriver

我有这个:

现在我有两个不同的构造函数:

我怎样才能将它们(功能和选项)都传递到driver?顺便说一句,IDE 告诉我它FirefoxDriver(capabilities)已被弃用。

0 投票
1 回答
833 浏览

java - java.lang.NoSuchMethodError: org.openqa.selenium.firefox.FirefoxOptions.merge(Capabilities) 尝试使用 Selenium 合并 DesiredCapabilities

当我尝试启动新Selenium/Firefox实例时DesiredCapabilitiesFirfoxOptions我得到以下代码:

我正在使用以下代码:

我的POM文件包含以下条目:

以前,我org.seleniumhq.selenium在 POM 中拥有不支持merge功能的 3.5.2 版本。但是,当我尝试3.5.2使用以下代码启动带有版本的 Selenium 时:

我得到以下异常:

我已经geckodriver.exe安装了最新版本。

版本 3.11.0 或版本 3.5.2 都不起作用(我也尝试过 3.8.2)。

我究竟做错了什么?

谢谢!

更新:

使用 3.11.0 版本,我得到以下堆栈跟踪:

对于 3.5.2 版本,以下是堆栈跟踪:

该方法getTMPFirefoxProfile()主要执行以下操作:

谢谢!!