Skip to content

Commit 2699726

Browse files
docs: Add 8 to 9 migration guide (#2039)
1 parent 39c2526 commit 2699726

File tree

2 files changed

+54
-2
lines changed

2 files changed

+54
-2
lines changed

README.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,15 @@
66

77
This is the Java language bindings for writing Appium Tests that conform to [WebDriver Protocol](https://w3c.github.io/webdriver/)
88

9-
## v8 Migration
9+
## v8 to v9 Migration
10+
11+
Since v9 the client only supports Java 11 and above.
12+
Follow the [v8 to v9 Migration Guide](./docs/v8-to-v9-migration-guide.md) in order to streamline the migration process.
13+
14+
## v7 to v8 Migration
1015

1116
Since version 8 Appium Java Client had several major changes, which might require to
12-
update your client code. Make sure to follow the [v7 to v8 Migration Guide](https://github.com/appium/java-client/blob/master/docs/v7-to-v8-migration-guide.md)
17+
update your client code. Make sure to follow the [v7 to v8 Migration Guide](./docs/v7-to-v8-migration-guide.md)
1318
in order to streamline the migration process.
1419

1520
## Add Appium java client to your test framework
@@ -90,6 +95,7 @@ dependencies {
9095
### Compatibility Matrix
9196
Appium Java Client | Selenium client
9297
--------------------|-----------------
98+
`9.0.0` | `4.14.1`
9399
`8.5.0`, `8.5.1` | `4.9.1`, `4.10.0`, `4.11.0`, `4.12.0`, `4.12.1` (known issue: appium/java-client#2004), `4.13.0`
94100
`8.4.0` | `4.8.2`, `4.8.3`, `4.9.0`
95101
`8.3.0` | `4.7.0`, `4.7.1`, `4.7.2`, `4.8.0`, `4.8.1`

docs/v8-to-v9-migration-guide.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
This is the list of main changes between major versions 8 and 9 of Appium
2+
java client. This list should help you to successfully migrate your
3+
existing automated tests codebase.
4+
5+
6+
## The support for Java compilers below version 11 has been dropped
7+
8+
- The minimum supported Java version is now 11. The library won't work
9+
with Java compilers below this version.
10+
11+
## The minimum supported Selenium version is set to 4.14.1
12+
13+
- Selenium versions below 4.14.1 won't work with Appium java client 9+.
14+
Check the [Compatibility Matrix](../README.md#compatibility-matrix) for more
15+
details about versions compatibility.
16+
17+
## Removed previously deprecated items
18+
19+
- `MobileBy` class has been removed. Use
20+
[AppiumBy](../src/main/java/io/appium/java_client/AppiumBy.java) instead
21+
- `launchApp`, `resetApp` and `closeApp` methods along with their
22+
`SupportsLegacyAppManagement` container.
23+
Use [the corresponding extension methods](https://github.com/appium/appium/issues/15807) instead.
24+
- `WindowsBy` class and related location strategies.
25+
- `ByAll` class has been removed in favour of the same class from Selenium lib.
26+
- `AndroidMobileCapabilityType` interface. Use
27+
[UIAutomator2 driver options](../src/main/java/io/appium/java_client/android/options/UiAutomator2Options.java)
28+
or [Espresso driver options](../src/main/java/io/appium/java_client/android/options/EspressoOptions.java) instead.
29+
- `IOSMobileCapabilityType` interface. Use
30+
[XCUITest driver options](../src/main/java/io/appium/java_client/ios/options/XCUITestOptions.java) instead.
31+
- `MobileCapabilityType` interface. Use
32+
[driver options](../src/main/java/io/appium/java_client/remote/options/BaseOptions.java) instead.
33+
- `MobileOptions` class. Use
34+
[driver options](../src/main/java/io/appium/java_client/remote/options/BaseOptions.java) instead.
35+
- `YouiEngineCapabilityType` interface. Use
36+
[driver options](../src/main/java/io/appium/java_client/remote/options/BaseOptions.java) instead.
37+
- Several misspelled methods. Use properly spelled alternatives instead.
38+
- `startActivity` method from AndroidDriver. Use
39+
[mobile: startActivity](https://github.com/appium/appium-uiautomator2-driver#mobile-startactivity)
40+
extension method instead.
41+
- `APPIUM` constant from the AutomationName interface. It is not needed anymore.
42+
- `PRE_LAUNCH` value from the GeneralServerFlag enum. It is not needed anymore.
43+
44+
## Moved items
45+
46+
- `AppiumUserAgentFilter` class to `io.appium.java_client.internal.filters` package.

0 commit comments

Comments
 (0)