I have the task of upgrading a rather old integration tests framework for mobile. It is using the following dependencies:
Selenium:
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.48.2</version>
<exclusions>
<exclusion>
<artifactId>httpmime</artifactId>
<groupId>org.apache.httpcomponents</groupId>
</exclusion>
</exclusions>
</dependency>
Appium java-client:
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>3.3.0</version>
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
</exclusions>
</dependency>
Saucelabs:
<dependency>
<groupId>com.saucelabs</groupId>
<artifactId>ci-sauce</artifactId>
<version>1.113</version>
<exclusions>
<!-- Exclude internal sauce 'selenium-java' dependency since we have
it already -->
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
<exclusion>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</exclusion>
</exclusions>
</dependency>
I ran this command: mvn versions:display-dependency-updates, to try to upgrade everything but there are so many classes that are obsolete now.
My tests heavily rely on the airplane mode and network being toggled and I see that the latest java client doesn’t support this. import io.appium.java_client.NetworkConnectionSetting is no longer supported either.
I could really use help with recommendations for suitable version upgrades.
Note: As per SauceLabs documentation, it supports only version 1.5.3 of Appium. What is the best version of java-client to go along with that?