计算器获取第一个元素失败

来源:7-6 Appium测试Hybrid应用详解

慕神2339583

2018-06-14

根据老师的例子,打开计算器正常,但是获取6这个元素,提示找不到,我隐形设置30S,还是40s都会报错,不知道原因

org.openqa.selenium.NoSuchElementException: An element could not be located on the page using the given search parameters. (WARNING: The server did not provide any stacktrace information)

Command duration or timeout: 40.27 seconds

For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html

Build info: version: '3.4.0', revision: 'unknown', time: 'unknown'

System info: host: 'THINKPAD-PC', ip: '172.20.169.101', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_91'

Driver info: io.appium.java_client.android.AndroidDriver

Capabilities [{appPackage=com.android.calculator2, networkConnectionEnabled=true, warnings={}, databaseEnabled=false, deviceName=emulator-5554, platform=LINUX, appActivity=.Calculator, desired={appPackage=com.android.calculator2, appActivity=.Calculator, platformVersion=5.1.1, automationName=Appium, platformName=Android, deviceName=emulator-5554}, platformVersion=5.1.1, webStorageEnabled=false, locationContextEnabled=false, automationName=Appium, browserName=Android, takesScreenshot=true, javascriptEnabled=true, platformName=Android}]

Session ID: 4a0fa99c-3dea-464a-92e2-cc94261e858b

*** Element info: {Using=id, value=digit_6}

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:215)

at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:167)

at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:671)

at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:42)

at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)

at io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1)

at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:410)

at io.appium.java_client.DefaultGenericMobileDriver.findElement(DefaultGenericMobileDriver.java:62)

at io.appium.java_client.AppiumDriver.findElement(AppiumDriver.java:1)

at io.appium.java_client.android.AndroidDriver.findElement(AndroidDriver.java:1)

at org.openqa.selenium.remote.RemoteWebDriver.findElementById(RemoteWebDriver.java:453)

at io.appium.java_client.DefaultGenericMobileDriver.findElementById(DefaultGenericMobileDriver.java:70)

at io.appium.java_client.AppiumDriver.findElementById(AppiumDriver.java:1)

at io.appium.java_client.android.AndroidDriver.findElementById(AndroidDriver.java:1)

at org.openqa.selenium.By$ById.findElement(By.java:218)

at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:402)

at io.appium.java_client.DefaultGenericMobileDriver.findElement(DefaultGenericMobileDriver.java:58)

at io.appium.java_client.AppiumDriver.findElement(AppiumDriver.java:1)

at io.appium.java_client.android.AndroidDriver.findElement(AndroidDriver.java:1)

at a.AppTest.test(AppTest.java:41)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)

at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)

at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)

at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)

at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)

at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)

at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)

at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)

at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)

at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)

at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)

at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)

at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)

at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)

at org.junit.runners.ParentRunner.run(ParentRunner.java:363)

at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)

at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

http://img.mukewang.com/szimg/5b22080300013c6c13660711.jpg

写回答

1回答

城下秋草

2018-06-14

要看元素ID是不是digit-6

0
1
慕神2339583
是这个
2018-06-15
共1条回复

Android自动化测试实战 Java篇主流工具,框架,脚本

Android测试工程师大逆转的必备技能课程

1362 学习 · 476 问题

查看课程