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

Error 'Maestro iOS driver did not start up in time' via ssh session #2176

Open
1 task done
moxorama opened this issue Dec 6, 2024 · 1 comment
Open
1 task done

Comments

@moxorama
Copy link

moxorama commented Dec 6, 2024

Is there an existing issue for this?

  • I have searched the existing issues and didn't find mine.

Steps to reproduce

Preparation

cd ~/maestro-bugreport`
maestro download-samples
unzip wikipedia.zip

Now I want to use my Macbook Pro as simple iOS CI machine, running maestro with headless Simulator via ssh session.

When I'm logged in my MacBook Pro GUI, trying to run tests via ssh session from Linux workstaton

ssh <me>@<MyMacbookPro> 
cd ~/maestro-bugreport
xcrun simctl boot Maestro_iPhone11_16
xcrun simctl install booted Wikipedia.app
maestro test ios-flow.yaml

Looks ok : Launch app "org.wikimedia.wikipedia"

When I'm logged out my Macbook Pro GUI, trying to run test via ssh session from Linux workstation

ssh <me>@<MyMacbookPro> 
cd ~/maestro-bugreport
xcrun simctl boot Maestro_iPhone11_16 
xcrun simctl install booted Wikipedia.app
maestro test ios-flow.yaml

Delay for a few minutes
Maestro iOS driver did not start up in the time

Actual results

So I've found clear correlation - if someone has GUI user session on Mac - I'm able to run maestro tests via ssh and headless simulator. It works even if user is logged in, but locked his screen.

If everybody has been logged out - maestro does't work

Expected results

I think maestro should be able to run test in both cases - when user has graphical session on mac, or all users has been logged out.

I've tested simulator - it works on MacOS without GUI session, I'm able to launch my app and take screenshots via simctl

About app

I'm able to reproduce this bug on any app and flow, but I'm filling bug report agains standard samples Wikipedia.app to avoid any side effects.

About environment

  • Macbook Pro M1 Pro, 16GB Ram
  • MacOS 15.0.1
  • XCode Version 16.1 (16B40)
  • iOS Simulator - iOS 16.2, iPhone 11
  • openjdk version "17.0.13" 2024-10-15 LTS

Logs

Logs
Maestro iOS driver did not start up in time
 
The stack trace was:
maestro.MaestroDriverStartupException$IOSDriverTimeoutException: Maestro iOS driver did not start up in time
	at maestro.drivers.IOSDriver.awaitLaunch(IOSDriver.kt:473)
	at maestro.drivers.IOSDriver.open(IOSDriver.kt:54)
	at maestro.Maestro$Companion.ios(Maestro.kt:624)
	at maestro.cli.session.MaestroSessionManager.createIOS(MaestroSessionManager.kt:313)
	at maestro.cli.session.MaestroSessionManager.createMaestro(MaestroSessionManager.kt:160)
	at maestro.cli.session.MaestroSessionManager.newSession(MaestroSessionManager.kt:85)
	at maestro.cli.session.MaestroSessionManager.newSession$default(MaestroSessionManager.kt:53)
	at maestro.cli.command.TestCommand.runShardSuite(TestCommand.kt:297)
	at maestro.cli.command.TestCommand.access$runShardSuite(TestCommand.kt:63)
	at maestro.cli.command.TestCommand$handleSessions$1$results$1$1.invokeSuspend(TestCommand.kt:265)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:111)
	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:99)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)

Maestro version

1.39.2

How did you install Maestro?

install script (https://get.maestro.mobile.dev)

Anything else?

I think this could be duplicate for #1585 , but in this case I have explicit reproducible case - I'm getting this error when I'm trying to use maestro with remote session without GUI session on my mac.

Also want to mention that maestro starts working if any user is logged into the graphical session, even if that user is different from the one working via SSH.

Copy link

linear bot commented Dec 6, 2024

@moxorama moxorama changed the title Maestro iOS driver did not start up in time via ssh session Error 'Maestro iOS driver did not start up in time' via ssh session Dec 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant