【发布时间】:2021-10-31 08:33:18
【问题描述】:
我正在使用 C# 中的 Selenium (4.0-rc1) 并想使用 SauceLabs,要使用此服务,我需要传递自定义功能。
在示例中,它显示了向集合添加功能(“string”,“string”),在 Java 代码中这是正确的方法,但在 C# Selenium 实现中,该接口 ICapabilities 是读取的-仅限。
接口 ICapabilities 似乎是 DriverOptions.ToCapabilities() 的正确方法,我已经实现了一个自定义 ICapabilities,但这会生成一个空引用。在远程驱动程序中查看代码似乎立即将 ICapabilities 转换为我无法实现的内部接口 IHasCapabilitiesDictionary[1],我认为这导致我的自定义 ICapabilities 抛出空引用。
我一定错过了一些简单的东西,因为它似乎是一个常见的要求 - 如何将自定义功能添加到 ICapabilities 集合。
编辑
另一个注意事项我已经尝试过已弃用的 DriverOptions.AddAdditionaCapability(name,value),即使它已过时只是为了查看它是否有效,但它会引发错误无法解析功能,因为它无法将自定义功能识别为MSEdge Options 类可以识别。
提前致谢。
【问题讨论】: