2017-08-28 67 views
0

使用appiumv1.6.5和java-client-3.2.0进行Android移动应用测试。 我无法访问移动应用主页中的webelements。主页被加载,但是有另一个窗口加载说“会话已过期”。没有办法移动那个新窗口。使用appium/Android进行移动测试 - 无法访问移动应用中的webelements

​​给出:

org.openqa.selenium.WebDriverException:方法尚未实现

我检查网页的源文件,当我打电话driver.getPageSource(),它是挂。我必须通过设备关闭移动应用才能移动到代码中的下一步。

+0

这是我的代码 – Sanjeewa

+0

capabilities = DesiredCapabilities.android(); capabilities.setCapability(MobileCapabilityType.PLATFORM,Platform.ANDROID); capabilities.setCapability(“platformName”,Platform.ANDROID); capabilities.setCapability(“deviceName”,“emu”); \t capabilities.setCapability(“app”,app.getAbsolutePath()); capabilities.setCapability(“appPackage”,“com.faber.worker”); capabilities.setCapability(“appActivity”,“com.faber.worker.MainActivity”); driver = new RemoteWebDriver(新的URL(“http://127.0.0.1:4723/wd/hub”),功能); \t Thread.sleep(15000); driver.switchTo()。activeElement()。click(); – Sanjeewa

+0

你想在该窗口点击的按钮的文字是什么 – SaiPawan

回答

0

使用新的UI Automator,您不需要使用switchTo方法。确保您的设备的Android系统WebView是最新的,否则您需要通过Google PlayStore进行更新。一旦你更新了Android系统WebView并尝试使用UIAutomator捕获元素,就像你通常做的那样,并且应该在UIAutomator的屏幕截图中看到webview中的元素。

+0

感谢Vinod, 当我试图通过appiumv1.6.5(启动新会话 - > startSession)使用以下代码 {“platformName”:“Android”, “deviceName”:“emulator-5554”, “app”:“D:\\ sdk-tools-windows-3859397 \\ Faber.apk”, “appPackage”:“com.faber.worker”, “appActivity”:“com.faber.worker.MainActivity” } 它没有加载完整的主页。因为它加载我的移动测试应用程序的时间超过10秒。 Appium预计在10秒之前。当我完全加载主页后尝试“刷新源代码和屏幕截图”时,它会挂起。任何帮助? – Sanjeewa

+0

首先你需要检查Automator是否检测到你的元素,你不能直接通过运行代码来知道。停止执行。打开你的Android SDK文件夹并从中打开uiautomator。捕获屏幕,它应该列出设备上可见的所有元素与图像 – Vinod

+0

嗨维诺德,是的它是检测到与该弹出/警报窗口的主页。没有问题来查看和获取元素名称。但从我的测试中,我无法访问这些元素。 它说元素不存在。当我尝试像,driver.findElementByXPath(“(// android.widget.TextView [@ nt-desc ='Faber'])[1]”)。点击(); – Sanjeewa