首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >添加DotNetSeleniumExtras包扩展时对类型错误的引用

添加DotNetSeleniumExtras包扩展时对类型错误的引用
EN

Stack Overflow用户
提问于 2022-07-10 10:32:32
回答 1查看 290关注 0票数 3

我正在C# .Net中创建一个测试自动化框架,使用Appium来自动化IOS和Android,并希望使用模式。所以我想利用PageFactory扩展。

通过将DotNetSeleniumExtras.PageObjects.Core作为NuGet包添加,会导致一个错误(红行)。4个错误

代码语言:javascript
运行
复制
CS7069: Reference to type 'IFindsById" claims it is defined in 'WebDriver', but it could not be found.

为了实例化页面对象并实现pattern模式,我需要这个扩展DotNetSeleniumExtras.PageObjects.Core

如果我漏掉了什么,或者有什么解决办法,请告诉我。提前感谢!

下面是我添加的上下文代码:

代码语言:javascript
运行
复制
using NUnit.Framework;
using OpenQA.Selenium.Appium.iOS;
using OpenQA.Selenium.Appium.PageObjects;
using SeleniumExtras.PageObjects;
using OpenQA.Selenium;
using OpenQA.Selenium.Appium;

namespace NativeApp_TestAutomation.Tests.Specs.IOS
{
[TestFixture]
public class LoginTest
{
    private IOSDriver<IOSElement> _driver;
    private HomeScreen _pageObject;

    [OneTimeSetUp]
    public void BeforeAll()
    {
        var capabilities = Capabilities.GetIOSCapabilities("");
        var serverUri = Env.ServerIsRemote() ? AppiumServer.RemoteServerUri : AppiumServer.LocalServiceUri;
        _driver = new IOSDriver<IOSElement>(serverUri, capabilities, Env.LaunchTimeoutSeconds);

        var timeSpan = new TimeOutDuration(new TimeSpan(0, 0, 0, 5, 0));
        _pageObject = new HomeScreen(_driver);

        PageFactory.InitElements(_driver, _pageObject, new AppiumPageObjectMemberDecorator(timeSpan));
    }

}

}

我在这里得到的红色线条都有相同的错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-20 18:50:16

其中一个最常见的原因是版本和程序集的混合,因为不同的版本及其兼容性。

如果您可以尝试以下步骤,最有可能解决的问题是:

  1. Appium.net最新推出的依赖于DotNetSeleniumExtras.PageObjects v3.11.0和WebDriver 3.141.0的版本
  2. DotNetSeleniumExtras.Core of v3.12.0 (不使用最新的,目标为v3.12.0),它依赖于WebDriver 3.12.0
  3. DotNetSeleniumExtras.PageObjects v3.11.0依赖于WebDriver 3.11.0
  4. 因此,通过添加WebDriver 3.12.0版本冲突应该得到解决。

这是一种最简单的方法--如果以前的版本有足够的特性,那么它就完成了,您可以等待更新。

第二个可以帮助您的选项是绑定重定向。这个想法很简单,你需要确保应用程序知道你的WebDriver在哪里,它的版本是正确的。

这里有一个很好的解释(但相信我,这是你最不想做的事,固定在一个地方,在另一个地方坏掉) 将bindingRedirect添加到.Net标准库

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72927803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档