bug: Java Client 8 can't connect to local Appium 2 server
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 25/100
- Tipo de issue
- Bug
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Estagnada
- Stack de tecnologia
- ios, java
- Domínio
- mobile-dev, testing-qa
Direção de pesquisa
Comece reproduzindo a falha com a inicialização mostrada do IOSDriver, Java client 8.2.0 e o comando CLI do servidor Appium; em seguida, compare as respostas /status e /sessions do servidor com a solicitação de sessão. Verifique o ponto de entrada do Java client e a configuração do WebDriverAgentRunner descritos na issue; considera-se concluído quando uma sessão em um dispositivo iOS real é iniciada sem exigir que o WDA Runner seja iniciado manualmente.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Is there an existing issue for this?
- I have searched the existing issues
Current Behavior
After migration from Appium 1 to Appium 2 (also Selenium 3 to Selenium 4) all my tests are not working. The issue is related to connection from java client to local Appium server
Java code is returning error:
org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
Host info: host: 'POLO-1357.lan', ip: 'fe80:0:0:0:1835:b628:a560:a83b%en0'
Server is not logging anything from this test
Im starting server via CLI:
appium server --address 127.0.0.1 --port 4723 --allow-cors
*I know that the port 4723 is a default one so can be omitted
When I will call simple GET /status or /sessions I can reach response from my local server:
[HTTP] --> GET /status
[HTTP] {}
[debug] [AppiumDriver@53b3] Calling AppiumDriver.getStatus() with args: []
[debug] [AppiumDriver@53b3] Responding to client with driver.getStatus() result: {"build":{"version":"2.0.0-beta.66"}}
[HTTP] <-- GET /status 304 3 ms - -
[HTTP]
[HTTP] --> GET /status
[HTTP] {}
[debug] [AppiumDriver@53b3] Calling AppiumDriver.getStatus() with args: []
[debug] [AppiumDriver@53b3] Responding to client with driver.getStatus() result: {"build":{"version":"2.0.0-beta.66"}}
[HTTP] <-- GET /status 304 1 ms - -
[HTTP]
[HTTP] --> GET /sessions
[HTTP] {}
[debug] [AppiumDriver@53b3] Calling AppiumDriver.getSessions() with args: []
[debug] [AppiumDriver@53b3] Responding to client with driver.getSessions() result: []
[HTTP] <-- GET /sessions 304 2 ms - -
Im trying to run test on real iOS Device (which was used by Appium 1 already - so was working before the upgrade)
Driver Initialisation:
XCUITestOptions options = new XCUITestOptions();
options.setPlatformName(Platform.IOS.name());
options.setPlatformVersion(device.getPlatformVersion());
options.setDeviceName(device.getName());
options.setUdid(device.getUdid());
options.setBundleId("MY_BUNDLE_ID");
options.setXcodeCertificate(new XcodeCertificate("GY9QC33CMS", "Apple Development"));
options.setAutomationName(AutomationName.IOS_XCUI_TEST);
options.setIncludeSafariInWebviews(true);
IOSDriver driver = new IOSDriver(new URL("http://127.0.0.1:4723"), options);
When Im trying to use Appium Inspector it is possible to attach to the device but first, I have to run WebDriverAgentRunner application on my iOS Device, without that it will not work. Even when WDA Runner was launched and Im trying to start tests, the connection is still not working.
My Pom:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>GROUP_ID</groupId>
<artifactId>Integration_Tests</artifactId>
<version>1.0.0-SNAPSHOT</version>
<properties>
<encoding>UTF-8</encoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<serenity.version>3.3.10</serenity.version>
<cucumber.version>7.11.0</cucumber.version>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<byte-buddy.version>1.11.9</byte-buddy.version>
<rest-assured.version>5.1.1</rest-assured.version>
<maven.compiler.plugin.version>3.8.1</maven.compiler.plugin.version>
<selenium.version>4.5.2</selenium.version>
<aspectj.version>1.9.6</aspectj.version>
<appium.version>8.2.0</appium.version>
<java-jwt.version>3.19.2</java-jwt.version>
<allure-maven.version>2.10.0</allure-maven.version>
<slf4j-simple.version>1.7.32</slf4j-simple.version>
<junit.version>4.13.2</junit.version>
<assertj.version>3.20.2</assertj.version>
<lombok.version>1.18.20</lombok.version>
<json-simple.version>1.1.1</json-simple.version>
<gson.version>2.8.7</gson.version>
<allure.version>2.22.0</allure.version>
<jackson.version>2.12.4</jackson.version>
<ashot.version>1.5.4</ashot.version>
<google-zxing.version>3.3.0</google-zxing.version>
<maven-assembly-plugin.version>2.3</maven-assembly-plugin.version>
<maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
<webdriver-manager.version>5.3.0</webdriver-manager.version>
<jgit.version>6.3.0.202209071007-r</jgit.version>
<!-- Spring - CallbackService -->
<spring.boot.version>2.5.4</spring.boot.version>
<tomcat.embed.version>9.0.52</tomcat.embed.version>
<spring.web.version>5.3.9</spring.web.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>bom</artifactId>
<version>2.17.46</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>net.serenity-bdd</groupId>
<artifactId>serenity-cucumber</artifactId>
<version>${serenity.version}</version>
</dependency>
<dependency>
<groupId>net.serenity-bdd</groupId>
<artifactId>serenity-core</artifactId>
<version>${serenity.version}</version>
</dependency>
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>${rest-assured.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>json-path</artifactId>
<version>${rest-assured.version}</version>
</dependency>
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>xml-path</artifactId>
<version>${rest-assured.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j-simple.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>${assertj.version}</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</dependency>
<!-- Choose one if possible and remove other one -->
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>${json-simple.version}</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>${gson.version}</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>${selenium.version}</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-cucumber7-jvm</artifactId>
<version>${allure.version}</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-rest-assured</artifactId>
<version>${allure.version}</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>${allure-maven.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>ru.yandex.qatools.ashot</groupId>
<artifactId>ashot</artifactId>
<version>${ashot.version}</version>
</dependency>
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>${appium.version}</version>
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-remote-driver</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-support</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
<version>${google-zxing.version}</version>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
<version>${google-zxing.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven-assembly-plugin.version}</version>
</dependency>
<dependency>
<groupId>com.auth0</groupId>
<artifactId>java-jwt</artifactId>
<version>${java-jwt.version}</version>
</dependency>
<dependency>
<groupId>io.github.bonigarcia</groupId>
<artifactId>webdrivermanager</artifactId>
<version>${webdriver-manager.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>s3</artifactId>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>sso</artifactId>
<version>2.17.46</version>
</dependency>
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
<version>${jgit.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.web.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>${spring.boot.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>logback-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>${spring.boot.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
<version>${spring.boot.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>${tomcat.embed.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.web.version}</version>
</dependency>
<dependency>
<groupId>net.serenity-bdd</groupId>
<artifactId>serenity-spring</artifactId>
<version>3.2.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<version>5.8.2</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>${allure-maven.version}</version>
<configuration>
<reportVersion>2.18.0</reportVersion>
<installDirectory>${basedir}/target</installDirectory>
<allureDownloadUrl>
https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/2.18.0/allure-commandline-2.18.0.zip
</allureDownloadUrl>
<resultsDirectory>${basedir}/target/report/allure-results</resultsDirectory>
<reportDirectory>${basedir}/target/allure-report</reportDirectory>
<inputDirectories>${basedir}/target/report/allure-results</inputDirectories>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.plugin.version}</version>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<forceJavacCompilerUse>true</forceJavacCompilerUse>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
-Dcucumber.options="--plugin io.qameta.allure.cucumber7jvm.AllureCucumber7Jvm"
</argLine>
<!-- <rerunFailingTestsCount>1</rerunFailingTestsCount>-->
<systemPropertyVariables>
<allure.results.directory>target/report/allure-results
</allure.results.directory>
</systemPropertyVariables>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>net.serenity-bdd.maven.plugins</groupId>
<artifactId>serenity-maven-plugin</artifactId>
<version>${serenity.version}</version>
<executions>
<execution>
<id>serenity-reports</id>
<phase>post-integration-test</phase>
<goals>
<goal>aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven-assembly-plugin.version}</version>
<configuration>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<archive>
<manifest>
<mainClass>com.idemia.pivt.TestRunner</mainClass>
</manifest>
</archive>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/test/resources</directory>
</resource>
</resources>
</build>
</project>
I tried many things and always failed to run some tests. The same for Android Device and also regular Selenium Driver is not starting any browser. At the moment the most important thing is to fix Appium to unblock native mobile tests
BR
Mateusz
PS
Im not able to register or login to discuss Appium forum. All options are not working for me (email, GitHub, google) that's why Im asking for support here
Expected Behavior
Java-client 8 can connect to local Appium server 2
Minimal Reproducible Example
Already put at actual behaviour section
Environment
- Operating system: macOS
- If running via
appiumCLI...- Appium CLI version (output of
appium --version): 2.0.0-beta.66 - Node.js version (output of
node --version): v19.7.0 npmversion (output ofnpm --version): 9.5.0- Last
appiumversion which did not exhibit the problem: Appium 1
- Appium CLI version (output of
- If running Appium Desktop, its version: n/a
- Appium driver(s) and their version(s):
[email protected] [installed (npm)]
[email protected] [installed (npm)] - Appium plugin(s) and their version(s):
[email protected] [installed (npm)]
[email protected] [installed (npm)] - Platform and version under test:
iOS 16.4.1 - Real device or emulator/simulator:
Real iPhone 13
Link to Appium Logs
No response
Futher Information
No response
- Linguagem predominante
- Java
- Estrelas
- 1.3k
- Forks
- 756
- Merge médio
- 1d 18h
- PRs com merge (30d)
- 26
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de appium/java-client
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
appium/java-client#2426 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 30/100
appium/java-client#2368 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 30/100
appium/java-client#2341 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 15/100
appium/java-client#2323 ·
Mantenedores costumam responder em até 1 dia
-
java-client 启动报错Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
appium/java-client#2288 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de appium/java-client
Issues semelhantes
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
apache/rocketmq-dashboard#6896 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
-
Unrecognized database schema version is treated as a pre-2.0 databaseTalvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
OpenIntegrationEngine/engine#496 ·
Mantenedores costumam responder em até 1 dia
-
enhancement good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
SasanLabs/VulnerableApp#836 ·
Mantenedores costumam responder em até 1 dia