Hi everyone! .NET client 2.0.0.1 has been released recently.
Below is the list of changes:
All obsolete code was removed. #C client won't support Appium server v lower than 1.5.0
Source code migration to C# 6.0. Now this bundle requires .Net Framework > v4.5 or Mono Framework version which supports .Net Framework v4.5 with Lang Level 6.
Update to Selenium.Webdriver v2.53.1 and Selenium.Support v2.53.1.
Update to Newtonsoft.Json v9.0.1.
-
Re-design of mobile searching strategies:
- The class
OpenQA.Selenium.Appium.MobileBy
was added.
- Classes
ByAccessibilityId
, ByAndroidUIAutomator
, ByIosUIAutomation
were grouped by the new class.
- Static methods that create instances of
ByAccessibilityId
, ByAndroidUIAutomator
, ByIosUIAutomation
were added.
The method public W GetNamedTextField(String name)
was marked obsolete. It is going to be removed.
ScrollTo()
and ScrollToExact()
became deprecated. They are going to be removed in the next release. The swiping action and OpenQA.Selenium.Appium.ByAndroidUIAutomator
or OpenQA.Selenium.Appium.ByIosUIAutomatio
n are recommended to use instead.
-
Server flags were added:
GeneralOptionList.AsyncTrace
IOSOptionList.WebkitDebugProxyPort
The SessionDetails
property was added. This property returns a dictionary of the current session data.
#153 fix & #152 fix. These changes are supposed to be the temporary workaround. We are searching for a more convenient solution. It seems it requires some changes on the server side.
FIX of the swiping issue (iOS, server version >= 1.5.0). Now the swiping is implemented differently by AndroidDriver and IOSDriver.
the ability to start an activity using Android intent actions, intent categories, flags and arguments was added to OpenQA.Selenium.Appium.Android.AndroidDriver. The StartActivityWithIntent method.
[Android] ability to push a common string as a file to the remote mobile device. The method was redesigned.
[Android] ability to push base64 encoded bytes as a file to the remote mobile device. The method was added.
[Android] ability to push a file as the file to the remote mobile device. The method was added.
Constructors like AppiumDriver(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
were added to OpenQA.Selenium.Appium.Android.AndroidDriver
and OpenQA.Selenium.Appium.iOS.IOSDriver
. Also OpenQA.Selenium.Appium.AppiumCommand
became public. The binding of these features may allow to use realated solutions of other vendors/modified Appium server builds which support JSONWP commands that default Appium/Selenium do not support.
The SetImmediateValue
method was moved to OpenQA.Selenium.Appium.AppiumWebElement
. It works against text input elements on Android.