OptimusAutomation
OptimusAutomation

Reputation: 151

C# Appium AppiumOptions error The capabilities platform name are standard capabilities and should not have the appium prefix

I am writing a first test in Appium using AndroidDriver with C#. When I write this line

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

I get the error:

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

My code snippet is:

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");
        }        
    }   
}

Some help appreciated to solve this issue. Thanks

Upvotes: 0

Views: 5009

Answers (1)

Ukrainis
Ukrainis

Reputation: 534

Currently making some experiments with Appium, for me this code working to driver initiliazing:

    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);

And, this line in your code:

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

, is this correct? Maybe fullReset? Here you also can find list with all capabilities.

Upvotes: 1

Related Questions