Since version 8 Appium Java Client had several major changes, which might require to
update your client code. Make sure to follow the v7 to v8 Migration Guide
in order to streamline the migration process.
How to install latest java client Beta/Snapshots
Java client project is available to use even before it is officially published to maven central. Refer jitpack.io
<dependency>
<groupId>com.github.appium</groupId>
<artifactId>java-client</artifactId>
<version>latest commit ID from master branch</version>
</dependency>
Gradle
Add the JitPack repository to your build file. Add it in your root build.gradle at the end of repositories:
Add idempotency key to session creation requests. #1327
Add support for Android capability types: buildToolsVersion, enforceAppInstall, ensureWebviewsHavePages, webviewDevtoolsPort, and remoteAppsCacheLimit. #1326
Added OTHER_APPS and PRINT_PAGE_SOURCE_ON_FIND_FAILURE Mobile Capability Types. #1323
Make settings available for all AppiumDriver instances. #1318
Add wrappers for the Windows screen recorder. #1313
Added an ability to get all the session details. #1167
TRACK_SCROLL_EVENTS, ALLOW_INVISIBLE_ELEMENTS, ENABLE_NOTIFICATION_LISTENER,
NORMALIZE_TAG_NAMES and SHUTDOWN_ON_POWER_DISCONNECT Android Settings were added.
KEYBOARD_AUTOCORRECTION, MJPEG_SCALING_FACTOR,
MJPEG_SERVER_SCREENSHOT_QUALITY, MJPEG_SERVER_FRAMERATE, SCREENSHOT_QUALITY
and KEYBOARD_PREDICTION iOS Settings were added.
GET_MATCHED_IMAGE_RESULT, FIX_IMAGE_TEMPLATE_SCALE,
SHOULD_USE_COMPACT_RESPONSES, ELEMENT_RESPONSE_ATTRIBUTES and
DEFAULT_IMAGE_TEMPLATE_SCALE settings were added for both Android and iOS #1166, #1156 and #1120
The new interface io.appium.java_client.ExecutesDriverScript was added. #1165
Added an ability to get status of appium server. #1153
The new interface io.appium.java_client. FindsByAndroidDataMatcher was added. #1106
The selector strategy io.appium.java_client.MobileBy.ByAndroidDataMatcher was added. #1106
Selendroid for android and UIAutomation for iOS are removed. #1077
[BUG FIX] Platform Name enforced on driver creation is avoided now. #1164
[BUG FIX] Send both signalStrengh and signalStrength for GSM_SIGNAL. #1115
[BUG FIX] Null pointer exceptions when calling getCapabilities is handled better. #1094
[DEPENDENCY UPDATES]
org.seleniumhq.selenium:selenium-java was updated to 4.0.0-alpha-1.
org.aspectj:aspectjweaver was updated to 1.9.4.
org.apache.httpcomponents:httpclient was updated to 4.5.9.
cglib:cglib was updated to 3.2.12.
org.springframework:spring-context was updated to 5.1.8.RELEASE.
io.github.bonigarcia:webdrivermanager was updated to 3.6.1.
org.eclipse.jdt:ecj was updated to 3.18.0.
com.github.jengelman.gradle.plugins:shadow was updated to 5.1.0.
checkstyle was updated to 8.22.
gradle was updated to 5.4.
dependency-check-gradle was updated to 5.1.0.
org.slf4j:slf4j-api was updated to 1.7.26.
org.apache.commons:commons-lang3 was updated to 3.9.
7.0.0
[ENHANCEMENTS]
The new interface io.appium.java_client.FindsByAndroidViewTag was added. #996
The selector strategy io.appium.java_client.MobileBy.ByAndroidViewTag was added. #996
The new interface io.appium.java_client.FindsByImage was added. #990
The selector strategy io.appium.java_client.MobileBy.ByImage was added. #990
The new interface io.appium.java_client.FindsByCustom was added. #1041
The selector strategy io.appium.java_client.MobileBy.ByCustom was added. #1041
DatatypeConverter is replaced with Base64 for JDK 9 compatibility. #999
Expand touch options API to accept coordinates as Point. #997
W3C capabilities written into firstMatch entity instead of alwaysMatch. #1010
Selendroid for android and UIAutomation for iOS is deprecated. #1034 and #1074
videoScale and fps screen recording options are introduced for iOS. #1067
NORMALIZE_TAG_NAMES setting was introduced for android. #1073
threshold argument was added to OccurrenceMatchingOptions. #1060
org.openqa.selenium.internal.WrapsElement replaced by org.openqa.selenium.WrapsElement. #1053
SLF4J logging support added into Appium Driver local service. #1014
IMAGE_MATCH_THRESHOLD, FIX_IMAGE_FIND_SCREENSHOT_DIMENSIONS, FIX_IMAGE_TEMPLATE_SIZE, CHECK_IMAGE_ELEMENT_STALENESS, UPDATE_IMAGE_ELEMENT_POSITION and IMAGE_ELEMENT_TAP_STRATEGY setting was introduced for image elements. #1011
[BUG FIX] Better handling of InvocationTargetException #968
[BUG FIX] Map sending keys to active element for W3C compatibility. #966
[BUG FIX] Error message on session creation is improved. #994
[DEPENDENCY UPDATES]
org.seleniumhq.selenium:selenium-java was updated to 3.141.59.
com.google.code.gson:gson was updated to 2.8.5.
org.apache.httpcomponents:httpclient was updated to 4.5.6.
cglib:cglib was updated to 3.2.8.
org.apache.commons:commons-lang3 was updated to 3.8.
org.springframework:spring-context was updated to 5.1.0.RELEASE.
io.github.bonigarcia:webdrivermanager was updated to 3.0.0.
[ENHANCEMENT] Added wrappers for Android logcat broadcaster. #858
[ENHANCEMENT] Add bugreport option to Android screen recorder. #852
[BUG FIX] Avoid amending parameters for SET_ALERT_VALUE endpoint. #867
[BREAKING CHANGE] Refactor network connection setting on Android. #865
[BUG FIX][BREAKING CHANGE] Refactor of the io.appium.java_client.AppiumFluentWait. It uses java.time.Duration for time settings instead of org.openqa.selenium.support.ui.Duration and java.util.concurrent.TimeUnit#863
[BREAKING CHANGE]io.appium.java_client.pagefactory.TimeOutDuration became deprecated. It is going to be removed. Use java.time.Duration instead. FIX #742#863.
[BREAKING CHANGE]io.appium.java_client.pagefactory.WithTimeOut#unit became deprecated. It is going to be removed. Use io.appium.java_client.pagefactory.WithTimeOut#chronoUnit instead. FIX #742#863.
[BREAKING CHANGE] constructors of io.appium.java_client.pagefactory.AppiumElementLocatorFactory, io.appium.java_client.pagefactory.AppiumFieldDecorator and io.appium.java_client.pagefactory.AppiumElementLocator which use io.appium.java_client.pagefactory.TimeOutDuration as a parameter became deprecated. Use new constructors which use java.time.Duration.
[DEPENDENCY UPDATES]
org.seleniumhq.selenium:selenium-java was updated to 3.11.0
6.0.0-BETA4
[ENHANCEMENT] Added handler for isDispalyed in W3C mode. #833
[ENHANCEMENT] Added handlers for sending SMS, making GSM Call, setting GSM signal, voice, power capacity and power AC. #834
[ENHANCEMENT] Added handlers for toggling wifi, airplane mode and data in android. #835
[DEPENDENCY UPDATES]
org.apache.httpcomponents:httpclient was updated to 4.5.5
cglib:cglib was updated to 3.2.6
org.springframework:spring-context was updated to 5.0.3.RELEASE
6.0.0-BETA3
[DEPENDENCY UPDATES]
org.seleniumhq.selenium:selenium-java was updated to 3.9.1
[BREAKING CHANGE] Removal of deprecated listener-methods from the AlertEventListener. #797
请发表评论