如何解决在Browserstack跨移动测试平台中执行时,并行执行期间会发生WebDriver异常
org.openqa.selenium.WebDriverException:会话未启动或终止(警告:服务器未提供任何堆栈跟踪信息) 命令持续时间或超时:0毫秒 构建信息:版本:'3.141.59',修订版本:'e82be7d358',时间:'2018-11-14T08:17:03' 系统信息:主机:'LAPTOP-AI87CII4',ip:'192.168.43.101',操作系统名称:'Windows 10',os.arch:'amd64',os.version:'10 .0',java.version:'1.8 .0_261' 驱动程序信息:io.appium.java_client.android.AndroidDriver 功能{64bit:false,acceptSslCert:false,acceptSslCerts:false,adbExecTimeout:120000,appActivity:biz.tikme.activities.Splash ...,appPackage:biz.tikme,autoGrantPermissions:true,automationName:uiautomator2,browserstack.is_hub_canary:false ,browserstack.minOSVersion:4.4,bundleID:biz.tikme,bundleId:biz.tikme,chromeOptions:{w3c:false},customFullReset:true,detected_language:selenium / 3.141.59(java win ...,设备:google pixel 3 ,deviceName:Android,enablePerformanceLogging:false,javascriptEnabled:true,移动:{浏览器:移动,版本:Google Pixel 3-9.0},nativeWebScreenshot:true,newCommandTimeout:0,new_bucketing:true,noReset:false,方向:PORTRAIT,orig_os :android,osVersion:9.0,os_version:9.0,平台:ANDROID,platformName:Android,projectName:TikMe-HyperLocalAutomationP ...,realMobile:true,systemPort:8201,udid:88MX01NAS,uiautomator2ServerLaunchTimeout:60000,version:} 会话ID:44f96cd0f831bf10a228bfa2c6a46876d1278e15 在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)处 在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 在java.lang.reflect.Constructor.newInstance(Constructor.java:423) 在org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214) 在org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166) 在org.openqa.selenium.remote.http.JsonHttpResponseCodec.reconstructValue(JsonHttpResponseCodec.java:40) 在org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:80) 在org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:44) 在org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 在io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:239) 在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) 在io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:45) 在io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1) 在io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1) 在io.appium.java_client.InteractsWithApps.closeApp(InteractsWithApps.java:140) 在com.tikme.hyperlocal.mobileautomation.base.Base.closeapp(Base.java:98) 在com.tikme.hyperlocal.mobileautomation.step.Hooks.quit(Hooks.java:82)
``` *** if(new GlobalParams().getmedium().equals("BrowserStack"))
{
int i = 0;
while(i<3)
{
try
{
Thread.sleep(2000);
new TestUtils().log().info("going to reset the app");
manager.getDriver().resetApp(); // This is the method which throws the exception
new TestUtils().log().info("app is resetted successfully");
break;
}
catch(Exception e)
{
new TestUtils().log().fatal("tried"+" "+i+" "+"time to reset the app but failed.");
i++;
}
}
}
new Base().closeapp();
}
} ```
解决方法
如果resetApp()不起作用,则可以尝试将其添加为DesiredCapabilities对象的功能
if
这两行将重置您的应用,这里是文档http://appium.io/docs/en/writing-running-appium/other/reset-strategies/#reset-strategies
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。