java - Appium _org.openqa.selenium.SessionNotCreatedException
问题描述
我正在运行 appium 脚本,用于 android 应用程序。
但它根本没有运行。
我已经在我的 Maven 项目中添加了运行测试所需的所有依赖项。
在下面添加我的所有代码。
请检查并帮助我。
发射班
package TestCases.Project_Entry;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import io.appium.java_client.remote.MobileCapabilityType;
public class launch {
AndroidDriver<AndroidElement> driver;
public AndroidDriver<AndroidElement> capabilities() throws MalformedURLException {
// TODO Auto-generated method stub
File appDir = new File("src");
File app = new File(appDir, "app-staging-debug.apk");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "Palak");
capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, "UiAutomator2");
capabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "25");
capabilities.setCapability("autoGrantPermissions", true);
capabilities.setCapability("--session-override", true);
driver = new AndroidDriver<AndroidElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
return driver;
}
}
- 我已经尝试过,重新启动eclipse。
- 将自动化名称添加为 ui automator 2
package TestCases.Project_Entry;
import java.io.IOException;
import java.net.MalformedURLException;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.*;
import PageObject.loginObjects;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
public class loginTestCases extends launch {
AndroidDriver<AndroidElement> driver;
@BeforeTest
public void openapp() throws MalformedURLException {
capabilities();
}
@Test
public void log() {
driver.findElementById("versionx.entryPoint:id/ed_verificationEmail").sendKeys("213214");
}
}
错误显示:-
>[RemoteTestNG] detected TestNG version 7.0.0
FAILED CONFIGURATION: @BeforeTest openapp
org.openqa.selenium.SessionNotCreatedException: Unable to create a new remote session. Please check the server log for more details. Original error: An unknown server-side error occurred while processing the command. Original
>===============================================
Default test
Tests run: 1, Failures: 0, Skips: 1
Configuration Failures: 1, Skips: 0
===============================================
>===============================================
Default suite
Total tests run: 1, Passes: 0, Failures: 0, Skips: 1
Configuration Failures: 1, Skips: 0
===============================================
解决方案
我认为您需要添加一项功能。
capabilities.setCapability("appWaitActivity", "*");
还要重新检查 APK 路径
推荐阅读
- java - 重新创建活动并保存值
- vb.net - Visual Studio 2017 VB.Net 陷阱鼠标右键单击多行文本框不起作用
- bash - 如何检查具有给定名称的文件是否存在于同一目录中?
- azure-service-fabric - 将分区移动到新节点时是否存在停机时间?
- c# - MvvmCross 无法为类型构造和初始化 ViewModel
- java - 我可以从小程序中以编程方式打开 Java 控制台吗?
- python - scrapy上的Pyinstaller错误?
- c++ - 从 xtensor 的视图中删除行
- react-native - React Native Expo publish to Android
- nginx - Nginx 将 localhost 重写为 /usr/share/nginx/static