【发布时间】:2017-11-17 01:45:12
【问题描述】:
我们正在尝试自动化我们需要执行滚动操作的场景,但是滑动和 JavaScriptExecutor 不起作用,我们的问题的一点背景,被测应用程序是一个混合应用程序(原生和 webview 都可用)和我们正在使用 IOS_Webkit_Debug_Proxy 来启用 web_view。 (我们没有使用原生元素,因为我们的应用完全建立在 webview 之上)
尝试了几种方法,例如将 web_view 切换到本机,反之亦然,但在这两种情况下,使用 JavaScript Executor 的 driver.swipe 方法或滚动应用程序都不起作用。
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME,
configuration.getProperty(MobileCapabilityType.PLATFORM_NAME));
capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, configuration.getProperty(MobileCapabilityType.PLATFORM_VERSION));
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME,configuration.getProperty(MobileCapabilityType.DEVICE_NAME));
capabilities.setCapability(MobileCapabilityType.UDID, configuration.getProperty(Constants.UDID));capabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT,8000);
capabilities.setCapability(MobileCapabilityType.APP, System.getProperty("user.dir") + configuration.getProperty(Constants.APP_IOS));
capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, AutomationName.IOS_XCUI_TEST);
capabilities.setCapability(MobileCapabilityType.AUTO_WEBVIEW, true);
capabilities.setCapability("autoAcceptAlerts", true);
String urlString = new
StringBuffer(configuration.getProperty(Constants.PROTOCOL)).append("://".append(configuration.getProperty(Constants.HOST_NAME)).append(":").append(configuration.getProperty(Constants.PORT)).append("/wd/hub").toString();
driver = new IOSDriver(new URL(urlString), capabilities);
driver.manage().timeouts().implicitlyWait(Constants.TIMEOUT_IN_SECONDS,TimeUnit.SECONDS);'
JavaClient: 4.1.2
Appium: 1.6.4
IOS_Webkit_Debug_Proxy
IOS version: 10.2
x代码:8.3.2 物理设备 如果您需要更多详细信息,请告诉我,并且我们正在进行项目,需要解决方案或解决方法才能开始。
【问题讨论】:
标签: java selenium-webdriver appium-ios