Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

investigate possibility to use locked devices #77

Open
vdelendik opened this issue Dec 18, 2020 · 1 comment
Open

investigate possibility to use locked devices #77

vdelendik opened this issue Dec 18, 2020 · 1 comment
Labels
enhancement New feature or request

Comments

@vdelendik
Copy link
Contributor

issue with unlocking iOS device is fixed: zebrunner/stf#145

in scope of this ticket let's do a research if we can organize device farm for manual and automation usage with locked screens.
benefits: not used devices sleep and lock display, i.e. no battery use

When we occupy device via STF we have to wake it up.
Also investigate how can we unlock via pin automatically by appium

@vdelendik vdelendik added the enhancement New feature or request label Dec 18, 2020
@vdelendik
Copy link
Contributor Author

tested such appium caps combination with valid unlockKey:
unlockType=pattern

16:08:40  For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/no_such_element.html
16:08:40  Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
16:08:40  System info: host: 'c34e77c396fa', ip: '172.18.0.9', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-142-generic', java.version: '11.0.12'
16:08:40  Driver info: driver.version: AndroidDriver
16:08:40  remote stacktrace: NoSuchElementError: [[[DEBUG info: An element could not be located on the page using the given search parameters. --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:08:40      at AndroidUiautomator2Driver.findElOrEls (/opt/mcloud/appium/node_modules/appium/node_modules/appium-android-driver/lib/commands/find.js:75:11)
16:08:40      at process._tickCallback (internal/process/next_tick.js:68:7)
16:08:40  org.openqa.selenium.WebDriverException: org.openqa.selenium.NoSuchElementException: [[[DEBUG info: An element could not be located on the page using the given search parameters. --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:08:40  For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/no_such_element.html
16:08:40  Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
16:08:40  System info: host: 'c34e77c396fa', ip: '172.18.0.9', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-142-generic', java.version: '11.0.12'
16:08:40  Driver info: driver.version: AndroidDriver
16:08:40  remote stacktrace: NoSuchElementError: [[[DEBUG info: An element could not be located on the page using the given search parameters. --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:08:40      at AndroidUiautomator2Driver.findElOrEls (/opt/mcloud/appium/node_modules/appium/node_modules/appium-android-driver/lib/commands/find.js:75:11)
16:08:40      at process._tickCallback (internal/process/next_tick.js:68:7)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.listener.EventFiringAppiumCommandExecutor.execute(EventFiringAppiumCommandExecutor.java:182)
16:08:40  	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
16:08:40  	at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:41)
16:08:40  	at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)
16:08:40  	at io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1)
16:08:40  	at org.openqa.selenium.remote.RemoteWebDriver.startSession$original$lxZhXgAE(RemoteWebDriver.java:213)
16:08:40  	at org.openqa.selenium.remote.RemoteWebDriver.startSession$original$lxZhXgAE$accessor$L24JgASi(RemoteWebDriver.java)
16:08:40  	at org.openqa.selenium.remote.RemoteWebDriver$auxiliary$IeNxuUVI.run(Unknown Source)
16:08:40  	at com.zebrunner.agent.core.webdriver.StartSessionInterceptor.onSessionStart(StartSessionInterceptor.java:35)
16:08:40  	at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java)
16:08:40  	at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:338)
16:08:40  	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)
16:08:40  	at io.appium.java_client.DefaultGenericMobileDriver.<init>(DefaultGenericMobileDriver.java:37)
16:08:40  	at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:89)
16:08:40  	at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:86)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.core.factory.impl.MobileFactory.create(MobileFactory.java:89)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.core.factory.DriverFactory.create(DriverFactory.java:69)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.createDriver(IDriverPool.java:387)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.getDriver(IDriverPool.java:129)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.getDriver(IDriverPool.java:85)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.getDriver(IDriverPool.java:72)
16:08:40  	at com.qaprosoft.carina.demo.MobileSampleTest.testLoginUser(MobileSampleTest.java:45)
16:08:40  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:08:40  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
16:08:40  	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:08:40  	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
16:08:40  	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:133)
16:08:40  	at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:598)
16:08:40  	at org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:173)
16:08:40  	at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
16:08:40  	at org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:824)
16:08:40  	at org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:146)
16:08:40  	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
16:08:40  	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
16:08:40  	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
16:08:40  	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
16:08:40  	at java.base/java.lang.Thread.run(Thread.java:829)
16:08:40  Caused by: org.openqa.selenium.NoSuchElementException: [[[DEBUG info: An element could not be located on the page using the given search parameters. --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:08:40  For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/no_such_element.html
16:08:40  Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
16:08:40  System info: host: 'c34e77c396fa', ip: '172.18.0.9', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-142-generic', java.version: '11.0.12'
16:08:40  Driver info: driver.version: AndroidDriver
16:08:40  remote stacktrace: NoSuchElementError: [[[DEBUG info: An element could not be located on the page using the given search parameters. --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:08:40      at AndroidUiautomator2Driver.findElOrEls (/opt/mcloud/appium/node_modules/appium/node_modules/appium-android-driver/lib/commands/find.js:75:11)
16:08:40      at process._tickCallback (internal/process/next_tick.js:68:7)
16:08:40  	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
16:08:40  	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
16:08:40  	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
16:08:40  	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
16:08:40  	at org.openqa.selenium.remote.W3CHandshakeResponse.lambda$errorHandler$0(W3CHandshakeResponse.java:62)
16:08:40  	at org.openqa.selenium.remote.HandshakeResponse.lambda$getResponseFunction$0(HandshakeResponse.java:30)
16:08:40  	at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:126)
16:08:40  	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
16:08:40  	at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
16:08:40  	at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
16:08:40  	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
16:08:40  	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
16:08:40  	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
16:08:40  	at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
16:08:40  	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
16:08:40  	at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
16:08:40  	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:128)
16:08:40  	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:74)
16:08:40  	at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)
16:08:40  	at com.qaprosoft.carina.core.foundation.webdriver.listener.EventFiringAppiumCommandExecutor.execute(EventFiringAppiumCommandExecutor.java:156)
16:08:40  	... 36 more

unlockType=pin

16:01:48  2021-11-12 13:01:46 IDriverPool [TestNG-test=Mobile test-1-22] [ERROR] Driver initialization 'default' FAILED! Retry 1 of 1 time - org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: [[[DEBUG info: Error finding unlock pin buttons! --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:01:48  Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
16:01:48  System info: host: 'c34e77c396fa', ip: '172.18.0.9', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-142-generic', java.version: '11.0.12'
16:01:48  Driver info: driver.version: AndroidDriver
16:01:48  remote stacktrace: UnknownError: An unknown server-side error occurred while processing the command. Original error: [[[DEBUG info: Error finding unlock pin buttons! --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:01:48      at getResponseForW3CError (/opt/mcloud/appium/node_modules/appium/node_modules/appium-base-driver/lib/protocol/errors.js:804:9)
16:01:48      at asyncHandler (/opt/mcloud/appium/node_modules/appium/node_modules/appium-base-driver/lib/protocol/protocol.js:385:57)
16:01:48  org.openqa.selenium.WebDriverException: org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: [[[DEBUG info: Error finding unlock pin buttons! --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:01:48  Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
16:01:48  System info: host: 'c34e77c396fa', ip: '172.18.0.9', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-142-generic', java.version: '11.0.12'
16:01:48  Driver info: driver.version: AndroidDriver
16:01:48  remote stacktrace: UnknownError: An unknown server-side error occurred while processing the command. Original error: [[[DEBUG info: Error finding unlock pin buttons! --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:01:48      at getResponseForW3CError (/opt/mcloud/appium/node_modules/appium/node_modules/appium-base-driver/lib/protocol/errors.js:804:9)
16:01:48      at asyncHandler (/opt/mcloud/appium/node_modules/appium/node_modules/appium-base-driver/lib/protocol/protocol.js:385:57)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.listener.EventFiringAppiumCommandExecutor.execute(EventFiringAppiumCommandExecutor.java:182)
16:01:48  	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
16:01:48  	at io.appium.java_client.DefaultGenericMobileDriver.execute(DefaultGenericMobileDriver.java:41)
16:01:48  	at io.appium.java_client.AppiumDriver.execute(AppiumDriver.java:1)
16:01:48  	at io.appium.java_client.android.AndroidDriver.execute(AndroidDriver.java:1)
16:01:48  	at org.openqa.selenium.remote.RemoteWebDriver.startSession$original$cZpR0YQE(RemoteWebDriver.java:213)
16:01:48  	at org.openqa.selenium.remote.RemoteWebDriver.startSession$original$cZpR0YQE$accessor$3ugqcRSN(RemoteWebDriver.java)
16:01:48  	at org.openqa.selenium.remote.RemoteWebDriver$auxiliary$CNP6fFLk.run(Unknown Source)
16:01:48  	at com.zebrunner.agent.core.webdriver.StartSessionInterceptor.onSessionStart(StartSessionInterceptor.java:35)
16:01:48  	at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java)
16:01:48  	at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:338)
16:01:48  	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)
16:01:48  	at io.appium.java_client.DefaultGenericMobileDriver.<init>(DefaultGenericMobileDriver.java:37)
16:01:48  	at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:89)
16:01:48  	at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:86)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.core.factory.impl.MobileFactory.create(MobileFactory.java:89)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.core.factory.DriverFactory.create(DriverFactory.java:69)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.createDriver(IDriverPool.java:387)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.getDriver(IDriverPool.java:129)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.getDriver(IDriverPool.java:85)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.IDriverPool.getDriver(IDriverPool.java:72)
16:01:48  	at com.qaprosoft.carina.demo.MobileSampleTest.testLoginUser(MobileSampleTest.java:45)
16:01:48  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:01:48  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
16:01:48  	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:01:48  	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
16:01:48  	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:133)
16:01:48  	at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:598)
16:01:48  	at org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:173)
16:01:48  	at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
16:01:48  	at org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:824)
16:01:48  	at org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:146)
16:01:48  	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
16:01:48  	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
16:01:48  	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
16:01:48  	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
16:01:48  	at java.base/java.lang.Thread.run(Thread.java:829)
16:01:48  Caused by: org.openqa.selenium.WebDriverException: An unknown server-side error occurred while processing the command. Original error: [[[DEBUG info: Error finding unlock pin buttons! --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:01:48  Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
16:01:48  System info: host: 'c34e77c396fa', ip: '172.18.0.9', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-142-generic', java.version: '11.0.12'
16:01:48  Driver info: driver.version: AndroidDriver
16:01:48  remote stacktrace: UnknownError: An unknown server-side error occurred while processing the command. Original error: [[[DEBUG info: Error finding unlock pin buttons! --udid R28M1384YQY --name Samsung_Galaxy_S10]]]
16:01:48      at getResponseForW3CError (/opt/mcloud/appium/node_modules/appium/node_modules/appium-base-driver/lib/protocol/errors.js:804:9)
16:01:48      at asyncHandler (/opt/mcloud/appium/node_modules/appium/node_modules/appium-base-driver/lib/protocol/protocol.js:385:57)
16:01:48  	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
16:01:48  	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
16:01:48  	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
16:01:48  	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
16:01:48  	at org.openqa.selenium.remote.W3CHandshakeResponse.lambda$errorHandler$0(W3CHandshakeResponse.java:62)
16:01:48  	at org.openqa.selenium.remote.HandshakeResponse.lambda$getResponseFunction$0(HandshakeResponse.java:30)
16:01:48  	at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:126)
16:01:48  	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
16:01:48  	at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
16:01:48  	at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
16:01:48  	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
16:01:48  	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
16:01:48  	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
16:01:48  	at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
16:01:48  	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
16:01:48  	at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
16:01:48  	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:128)
16:01:48  	at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:74)
16:01:48  	at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)
16:01:48  	at com.qaprosoft.carina.core.foundation.webdriver.listener.EventFiringAppiumCommandExecutor.execute(EventFiringAppiumCommandExecutor.java:156)
16:01:48  	... 36 more

@vdelendik vdelendik added this to the 2.2 milestone Feb 13, 2022
@vdelendik vdelendik modified the milestones: 2.2, 2.3 May 20, 2022
@vdelendik vdelendik modified the milestones: 2.3, 2.4 Aug 19, 2022
@vdelendik vdelendik modified the milestones: 2.4, 2.5 Dec 12, 2022
@vdelendik vdelendik removed this from the 2.6 milestone Oct 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant