Appium 无法创建新会话。(原始错误:命令失败:)应用程序错误
我正在做Android设备的自动化测试在Emulator中,它工作正常。连接到设备时,它正在创建并安装一个unlock.apk到android设备。在那之后,下面的错误就来了 我已设置以下配置 DesiredCapabilities=DesiredCapabilities.android(); capabilities.setCapability(MobileCapabilityType.BROWSER_NAME,“”)Appium 无法创建新会话。(原始错误:命令失败:)应用程序错误,appium,Appium,我正在做Android设备的自动化测试在Emulator中,它工作正常。连接到设备时,它正在创建并安装一个unlock.apk到android设备。在那之后,下面的错误就来了 我已设置以下配置 DesiredCapabilities=DesiredCapabilities.android(); capabilities.setCapability(MobileCapabilityType.BROWSER_NAME,“”) 在初始化appium驱动程序之前添加以下代码 String cmd = "
在初始化appium驱动程序之前添加以下代码
String cmd = "adb shell getprop ro.build.version.release";
String osVersion=executeCommand(cmd);
if(osVersion.contains("7"))
{
//uninstall io.appium.settings
cmd="adb uninstall io.appium.settings";
executeCommand(cmd);
//uninstall io.appium.unlock
cmd="adb uninstall io.appium.unlock";
executeCommand(cmd);
}
public String executeCommand(String cmd)
{
String commandresponse="";
try
{
Runtime run = Runtime.getRuntime();
Process proc=run.exec(cmd);
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(proc.getInputStream()));
BufferedReader stdError = new BufferedReader(new
InputStreamReader(proc.getErrorStream()));
String response=null;
while ((response = stdInput.readLine()) != null)
{
if(response.length()>0)
{
commandresponse=commandresponse+response;
}
}
while ((response = stdError.readLine()) != null)
{
commandresponse=commandresponse+response;
}
}
catch(Exception e)
{
e.printStackTrace();
}
//System.out.println(commandresponse);
return commandresponse;
}谢谢希夫和维诺
最终解决了那些问题。。我输入了错误的活动名称。所以它被关上了。通过在capability的下面一行设置,它可以很好地运行capability.setCapability(“appActivity”、“com.example.main.LaunchActivity”)
capabilities.setCapability(“deviceName”、“ZZ22cdddP9”);
能力。设置能力(“平台版”、“7.0”);
能力。设置能力(“平台名”、“安卓”);
capabilities.setCapability(“app”,“D:\\abc.apk”);
capabilities.setCapability(“appPackage”、“com.s.abc”);
capabilities.setCapability(“appActivity”、“com.example.main.LaunchActivity”)代码>您正在设置deviceName=设备序列号,这是错误的。udid=deviceSerialNumber是正确的。我也尝试过这种方法,同样的错误你甚至在真实的设备上运行appium。你能帮我分享一下你的配置代码吗。运行应用程序时,io.appium.unlock&io.appium.setting正在移动设备中安装,但会话未创建以运行测试用例扫描您请告诉我如何在appium 1.6.5中添加应用程序路径如何在appium 1.6.5hi中上载apk。。我解决了那些问题。。一个新问题出现了。。会话已终止。。如何解决这个问题。我已经解决了那些问题。。有一个问题。。我需要帮助在android scrren中滚动。。driver.swipe不工作。。我试过JS executer。。你能帮我解决这个问题吗?我的问题是当我注释掉capabilities.setCapability(“appActivity”,“com.splashAnimation.splashAnimation”);这是我的应用程序正在我的手机中运行。。但当我取消线上注释时,应用程序不是午餐。。最后,在我的测试用例中,没有定位错误的元素出现了,我应该怎么做。。请建议我。。将设备名称设置为实际的“三星”或adb设备,即“zz22cdddP9”即可。。两者都一样,但就我而言。。我的申请不是午餐。。当我执行//capabilities.setCapability(“appActivity”、“com.splashAnimation.splashAnimation”)。应用程序正在使用午餐,但它找不到执行测试用例所需的元素..我已经按照您建议的方式完成了。。请帮我解决上述问题。。还将会话overirde添加为true&capabilities.setCapability(“noReset”,true);能力。设置能力(MOBILECABILITYTYPE.FULL_RESET,false);嗨,希夫,我已经解决了那些问题。。有一个问题。。我需要帮助在android scrren中滚动。。driver.swipe不工作。。我试过JS executer。。你能帮我吗?你可以定义你想要滚动的x点和y点以及持续时间驱动程序。滑动(结束x,开始y,开始x,开始y,1000);
String cmd = "adb shell getprop ro.build.version.release";
String osVersion=executeCommand(cmd);
if(osVersion.contains("7"))
{
//uninstall io.appium.settings
cmd="adb uninstall io.appium.settings";
executeCommand(cmd);
//uninstall io.appium.unlock
cmd="adb uninstall io.appium.unlock";
executeCommand(cmd);
}
public String executeCommand(String cmd)
{
String commandresponse="";
try
{
Runtime run = Runtime.getRuntime();
Process proc=run.exec(cmd);
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(proc.getInputStream()));
BufferedReader stdError = new BufferedReader(new
InputStreamReader(proc.getErrorStream()));
String response=null;
while ((response = stdInput.readLine()) != null)
{
if(response.length()>0)
{
commandresponse=commandresponse+response;
}
}
while ((response = stdError.readLine()) != null)
{
commandresponse=commandresponse+response;
}
}
catch(Exception e)
{
e.printStackTrace();
}
//System.out.println(commandresponse);
return commandresponse;
Set following capabilities only and try to start appium :
Note : deviceName should be name which we will get using "adb devices" command.
capabilities.setCapability("deviceName", "ZZ22cdddP9");
capabilities.setCapability("platformVersion", "7.0");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("app", "D:\\abc.apk");
capabilities.setCapability("appPackage", "com.s.abc");
capabilities.setCapability("appActivity", "com.s.sn");