AndroidDriver构造函数引发NullReferenceException
AndroidDriver constructor rises NullReferenceException
我在 Mac 机器上使用 Appium 服务器 运行,并使用带有 c# 绑定的 AppiumDriver 从 Windows 机器上执行测试。问题是,当我创建 AndroidDriver 的实例时,其构造函数会引发 NullReferenceException。当我创建一个 RemoteWebDriver 的实例时,它运行得很顺利。这是我的代码:
var caps = new DesiredCapabilities();
caps.SetCapability(MobileCapabilityType.DeviceName, "Nexus_4");
caps.SetCapability("udid", "<valid-device-id>");
caps.SetCapability(MobileCapabilityType.App, "https://valid/path/to/my.apk");
caps.SetCapability(MobileCapabilityType.PlatformName, MobilePlatform.Android);
using (var drv = new AndroidDriver(ServerUri, caps)) // rises exception
//using (var drv = new RemoteWebDriver(ServerUri, caps)) // works smoothly
{
drv.GetScreenshot().SaveAsFile("Android.png", ImageFormat.Png);
}
异常:
System.NullReferenceException : Object reference not set to an instance of an object.
Result StackTrace:
at OpenQA.Selenium.Appium.AppiumDriver._AddAppiumCommands()
at OpenQA.Selenium.Appium.AppiumDriver..ctor(Uri remoteAddress, ICapabilities desiredCapabilities)
at OpenQA.Selenium.Appium.Android.AndroidDriver..ctor(Uri remoteAddress, DesiredCapabilities desiredCapabilities)
我哪里错了?为什么AndroidDriver的构造函数抛出这个异常却没有说明原因?
该错误已在最新 Appium.Webdriver 版本中解决。
我在 Mac 机器上使用 Appium 服务器 运行,并使用带有 c# 绑定的 AppiumDriver 从 Windows 机器上执行测试。问题是,当我创建 AndroidDriver 的实例时,其构造函数会引发 NullReferenceException。当我创建一个 RemoteWebDriver 的实例时,它运行得很顺利。这是我的代码:
var caps = new DesiredCapabilities();
caps.SetCapability(MobileCapabilityType.DeviceName, "Nexus_4");
caps.SetCapability("udid", "<valid-device-id>");
caps.SetCapability(MobileCapabilityType.App, "https://valid/path/to/my.apk");
caps.SetCapability(MobileCapabilityType.PlatformName, MobilePlatform.Android);
using (var drv = new AndroidDriver(ServerUri, caps)) // rises exception
//using (var drv = new RemoteWebDriver(ServerUri, caps)) // works smoothly
{
drv.GetScreenshot().SaveAsFile("Android.png", ImageFormat.Png);
}
异常:
System.NullReferenceException : Object reference not set to an instance of an object.
Result StackTrace:
at OpenQA.Selenium.Appium.AppiumDriver._AddAppiumCommands()
at OpenQA.Selenium.Appium.AppiumDriver..ctor(Uri remoteAddress, ICapabilities desiredCapabilities)
at OpenQA.Selenium.Appium.Android.AndroidDriver..ctor(Uri remoteAddress, DesiredCapabilities desiredCapabilities)
我哪里错了?为什么AndroidDriver的构造函数抛出这个异常却没有说明原因?
该错误已在最新 Appium.Webdriver 版本中解决。