【问题标题】:C# Appium AppiumOptions error The capabilities platform name are standard capabilities and should not have the appium prefixC# Appium AppiumOptions 错误功能平台名称是标准功能,不应具有 appium 前缀
【发布时间】:2020-04-22 21:24:01
【问题描述】:

我正在使用带有 C# 的 AndroidDriver 在 Appium 中编写第一个测试。当我写下这一行时

driver = new AndroidDriver<AndroidElement>(url, options);

我得到错误:

OpenQA.Selenium.WebDriverException: 'The capabilities ["PlatformName"] are standard capabilities and 
should not have the "appium" prefix'

我的代码 sn-p 是:

using OpenQA.Selenium.Appium.Android;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;
using NUnit.Framework;
using OpenQA.Selenium.Appium;

namespace AppiumCTest1
{
    [TestClass]
    public class TC1
    {
        AndroidDriver<AndroidElement> driver;
        DesiredCapabilities cap;
    [TestMethod]        
        public void TestBrowser()
        {

            AndroidDriver<AndroidElement> driver;
            AppiumOptions options = new AppiumOptions();
            options.PlatformName = "Android";
            options.AddAdditionalCapability("deviceName", "Pixel API 29");
            options.AddAdditionalCapability("PlatformName", "Android");
            options.AddAdditionalCapability("Udid", "169.254.138.177:5555");
            options.AddAdditionalCapability("fullRest", "True");            
            options.AddAdditionalCapability("appPackage", "MyPackage");
            options.AddAdditionalCapability("appActivity", "MyActivity");
            Uri url = new Uri("http://127.0.0.1:4723/wd/hub");
            driver = new AndroidDriver<AndroidElement>(url, options);
            driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);            
            driver.Navigate().GoToUrl("http://www.bing.com");
        }        
    }   
}

感谢一些帮助来解决这个问题。谢谢

【问题讨论】:

    标签: c# selenium selenium-webdriver appium


    【解决方案1】:

    目前正在用 Appium 做一些实验,对我来说,这段代码用于驱动程序初始化:

        private AndroidDriver<AppiumWebElement> _driver;
        private AppiumLocalService _appiumLocalService;
    
        [SetUp]
        public void Setup()
        {
            DriverOptions caps = new AppiumOptions();
            caps.AddAdditionalCapability(MobileCapabilityType.DeviceName, "R32CC02AGJK");
            caps.AddAdditionalCapability("appPackage", "com.android.calculator2");
            caps.AddAdditionalCapability("appActivity", "com.android.calculator2.Calculator");
            caps.AddAdditionalCapability(MobileCapabilityType.PlatformName, "Android");
            caps.AddAdditionalCapability(MobileCapabilityType.PlatformVersion, "5.1.1");
            caps.AddAdditionalCapability(MobileCapabilityType.AutomationName, "UiAutomator2");
    
            _driver = new AndroidDriver<AppiumWebElement>(
                new Uri("http://127.0.0.1:4723/wd/hub"), caps);
    

    而且,您的代码中的这一行:

    options.AddAdditionalCapability("fullRest", "True");

    ,这是正确的吗?也许完全重置? Here你也可以找到所有功能的列表。

    【讨论】:

    • 感谢您的解决方案。我现在已经设法让它工作了。
    猜你喜欢
    • 2023-01-05
    • 1970-01-01
    • 2020-10-23
    • 1970-01-01
    • 2019-03-21
    • 2020-02-27
    • 1970-01-01
    • 2019-08-05
    • 1970-01-01
    相关资源
    最近更新 更多