参数1:无法从“ System.Uri”转换为“ OpenQA.Selenium.Remote.ICommandExecutor”

时间:2019-12-26 13:12:09

标签: c# selenium selenium-webdriver appium appium-android

我正在使用Appium AndroidDriver和C#编写第一个测试用例。当我写这一行

driver = new AndroidDriver<AndroidElement>(new Uri("http://127.0.01:4723/wd/hb"), cap);

我遇到了错误

Severity Code Description Project File Line Suppression State Error CS1503 Argument 1: cannot convert 
from 'System.Uri' to 'OpenQA.Selenium.Remote.ICommandExecutor'

    Severity    Code    Description Project File    Line    Suppression State
Error   CS1503  Argument 2: cannot convert from 'OpenQA.Selenium.Remote.DesiredCapabilities' to 'OpenQA.Selenium.DriverOptions' AppiumCTest1    

YouTube教程就是这样编写实例化AndroidDriver的。不知道为什么我得到错误。一些帮助表示赞赏。谢谢。

我的代码段是

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium.Appium.Android;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;
using NUnit.Framework;

namespace AppiumCTest1
{
    [TestClass]
    public class TC1
    {
        AndroidDriver<AndroidElement> driver;
        DesiredCapabilities cap;

        [TestMethod]        
        public void TestBrowser()
        {
            cap = new DesiredCapabilities();
            cap.SetCapability("DeviceName", "Pixel API 29");
            cap.SetCapability("PlatformName", "Android");
            cap.SetCapability("Udid", "169.254.138.177:5555");
            cap.SetCapability("fullRest", "True");
            cap.SetCapability("MobileCapabilityType.App", "Browser");                               
            driver = new AndroidDriver<AndroidElement>(new Uri("http://127.0.01:4723/wd/hb"), cap);
            driver.Navigate().GoToUrl("http://www.bing.com");    
        }        

        [TearDown]
        public void CloseDriver() 
        {
            driver.Close();
        }               
    }        
}

1 个答案:

答案 0 :(得分:0)

您可以将驱动程序声明为AndroidDriver driver;,然后在TestMethod中将其初始化,如下所示:

driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);