[INFO ] MAESTRO - ---- System Info ---- [INFO ] MAESTRO - Maestro Version: 1.38.1 [INFO ] MAESTRO - CI: Undefined [INFO ] MAESTRO - OS Name: Mac OS X [INFO ] MAESTRO - OS Version: 15.5 [INFO ] MAESTRO - Architecture: aarch64 [INFO ] MAESTRO - Java Version: 17 [INFO ] MAESTRO - Xcode Version: 16.0 [INFO ] MAESTRO - Flutter Version: Undefined [INFO ] MAESTRO - Flutter Channel: Undefined [INFO ] MAESTRO - --------------------- [INFO ] maestro.Maestro - Getting device info [INFO ] m.cli.runner.MaestroCommandRunner - Define variables RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=}, label=null), runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Define variables COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null), openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null), applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Launching app com.stripe.react.native [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 285) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (single-step)" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=425, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 453) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (single-step)" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,572][629,629], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=572, width=178, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 600) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Checkout" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=true, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Tap on (Optional) "Card" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Card number" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Taking screenshot [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Card number" FAILED [ERROR] m.cli.session.MaestroSessionManager - Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:73) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 17:18:48.943 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 17:18:48.944 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 17:18:48.945 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 17:18:48.945 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 17:18:48.945 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 17:18:48.945 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 17:18:48.945 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 17:18:49.069 [DEBUG] io.micrometer.common.util.internal.logging.InternalLoggerFactory.newDefaultFactory: Using SLF4J as the default logging framework 17:18:49.147 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 17:18:49.150 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 17:18:49.154 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 17:18:49.154 [ INFO] MAESTRO.logSystemInfo: --------------------- 17:18:49.837 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/paymentsheet-basic.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 17:18:50.207 [ INFO] maestro.Maestro.invoke: Getting device info 17:18:50.460 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 17:18:50.515 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 17:18:50.518 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-basic}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:50.523 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 17:18:50.526 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 17:18:50.529 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:50.531 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 17:18:50.532 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 17:18:50.535 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:18:51.343 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 17:18:56.387 [ERROR] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandFailed: Unable to launch app com.stripe.react.native: null 17:18:56.393 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 17:18:56.393 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:18:57.003 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" FAILED 20:31:28.573 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 20:31:28.574 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 20:31:28.574 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 20:31:28.574 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 20:31:28.575 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 20:31:28.575 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 20:31:28.575 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 20:31:28.794 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 20:31:28.801 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 20:31:28.807 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 20:31:28.807 [ INFO] MAESTRO.logSystemInfo: --------------------- 20:31:28.898 [DEBUG] io.micrometer.common.util.internal.logging.InternalLoggerFactory.newDefaultFactory: Using SLF4J as the default logging framework 20:31:29.572 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/paymentsheet-basic.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 20:31:34.564 [ INFO] maestro.Maestro.invoke: Getting device info 20:31:34.763 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 20:31:34.820 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 20:31:34.823 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-basic}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:34.826 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 20:31:34.828 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 20:31:34.830 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:34.832 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 20:31:34.833 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 20:31:34.835 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:37.116 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 20:31:37.588 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 20:31:37.592 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 20:31:37.595 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:45.495 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 20:31:46.404 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:31:46.406 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 20:31:46.406 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:31:46.406 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:31:48.433 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:31:48.433 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 20:31:48.437 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 20:31:48.439 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:48.630 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=425, width=954, height=57)) 20:31:50.152 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:31:50.153 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 20:31:50.153 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:31:50.153 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:31:53.235 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:31:53.237 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 20:31:53.240 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 20:31:53.242 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:53.385 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,572][629,629], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=572, width=178, height=57)) 20:31:54.200 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:31:54.200 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 600) using hierarchy based logic for wait 20:31:54.201 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:31:54.201 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:31:57.255 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:31:57.256 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 20:31:57.259 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 20:31:57.261 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:31:57.924 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 20:31:57.926 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 20:31:57.929 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:32:04.463 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 20:32:04.464 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 20:32:04.468 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 20:32:04.471 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:32:04.472 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:32:04.712 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 20:32:04.714 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:32:14.360 [ERROR] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandFailed: Element not found: Text matching regex: Card number 20:32:14.361 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 20:32:14.361 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:32:14.584 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" FAILED 20:32:14.894 [ERROR] maestro.cli.session.MaestroSessionManager.newSession$lambda$0: Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:93) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 20:32:14.895 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 20:32:19.900 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 20:32:19.900 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 20:32:19.900 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 20:32:19.900 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 20:32:19.900 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 20:32:19.900 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 20:32:20.383 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 20:32:20.383 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 20:32:20.384 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 20:32:20.384 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 20:32:20.389 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 22:10:29.593 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 22:10:29.594 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 22:10:29.595 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 22:10:29.595 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 22:10:29.595 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 22:10:29.595 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 22:10:29.595 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 22:10:29.767 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 22:10:29.771 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 22:10:29.775 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 22:10:29.775 [ INFO] MAESTRO.logSystemInfo: --------------------- 22:10:30.312 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/paymentsheet-basic.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 22:10:34.000 [ INFO] maestro.Maestro.invoke: Getting device info 22:10:34.186 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 22:10:34.244 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 22:10:34.247 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-basic}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:34.250 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 22:10:34.252 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 22:10:34.256 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:34.257 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 22:10:34.259 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 22:10:34.261 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:35.916 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 22:10:36.283 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 22:10:36.287 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 22:10:36.290 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:41.718 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 22:10:42.640 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:10:42.643 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 22:10:42.643 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:10:42.643 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:10:44.904 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:10:44.905 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 22:10:44.909 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 22:10:44.912 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:45.103 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=425, width=954, height=57)) 22:10:46.113 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:10:46.113 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 22:10:46.113 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:10:46.113 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:10:48.739 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:10:48.740 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 22:10:48.743 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 22:10:48.745 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:48.928 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,572][629,629], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=572, width=178, height=57)) 22:10:50.516 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:10:50.517 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 600) using hierarchy based logic for wait 22:10:50.517 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:10:50.517 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:10:53.991 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:10:53.992 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 22:10:53.995 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 22:10:53.998 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:10:54.145 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 22:10:54.147 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 22:10:54.149 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:11:01.150 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 22:11:01.151 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 22:11:01.154 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 22:11:01.156 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:11:01.156 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:11:01.361 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 22:11:01.364 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:11:11.149 [ERROR] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandFailed: Element not found: Text matching regex: Card number 22:11:11.151 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 22:11:11.151 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:11:11.314 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" FAILED 22:11:11.633 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 22:11:16.644 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 22:11:16.644 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 22:11:16.644 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 22:11:16.644 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 22:11:16.644 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 22:11:16.645 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 22:11:17.154 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 22:11:17.155 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 22:11:17.155 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 22:11:17.155 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 22:11:17.159 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 11:32:10.320 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 11:32:10.321 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 11:32:10.322 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 11:32:10.322 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 11:32:10.322 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 11:32:10.322 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 11:32:10.322 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 11:32:10.511 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 11:32:10.516 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 11:32:10.520 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 11:32:10.520 [ INFO] MAESTRO.logSystemInfo: --------------------- 11:32:11.020 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/paymentsheet-basic.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 11:32:12.730 [ INFO] maestro.Maestro.invoke: Getting device info 11:32:12.883 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 11:32:12.934 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 11:32:12.935 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-basic}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:12.938 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 11:32:12.939 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 11:32:12.943 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:12.944 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 11:32:12.945 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 11:32:12.947 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:13.685 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 11:32:13.794 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 11:32:13.795 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 11:32:13.796 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:15.241 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 11:32:16.312 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:32:16.313 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 11:32:16.314 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:32:16.314 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:32:17.380 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:32:17.380 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 11:32:17.381 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 11:32:17.382 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:17.431 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=425, width=954, height=57)) 11:32:18.259 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:32:18.259 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 11:32:18.259 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:32:18.259 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:32:19.623 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:32:19.623 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 11:32:19.624 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 11:32:19.625 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:19.701 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,572][629,629], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=572, width=178, height=57)) 11:32:20.471 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:32:20.471 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 600) using hierarchy based logic for wait 11:32:20.472 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:32:20.472 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:32:23.295 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:32:23.296 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 11:32:23.297 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 11:32:23.299 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:23.319 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 11:32:23.319 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 11:32:23.320 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:30.367 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 11:32:30.368 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 11:32:30.370 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 11:32:30.373 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 11:32:30.373 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:32:30.432 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 11:32:30.433 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:32:40.367 [ERROR] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandFailed: Element not found: Text matching regex: Card number 11:32:40.369 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 11:32:40.369 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:32:40.427 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" FAILED 11:32:40.754 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 11:32:45.760 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 11:32:45.761 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 11:32:45.761 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 11:32:45.761 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 11:32:45.761 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 11:32:45.761 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 11:32:45.891 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 11:32:45.892 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 11:32:45.892 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 11:32:45.892 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 11:32:45.895 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 16:57:52.874 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 16:57:52.875 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 16:57:52.876 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 16:57:52.876 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 16:57:52.876 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 16:57:52.876 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 16:57:52.876 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 16:57:53.083 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 16:57:53.087 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 16:57:53.091 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 16:57:53.091 [ INFO] MAESTRO.logSystemInfo: --------------------- 16:57:53.706 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/paymentsheet-basic.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 16:57:55.381 [ INFO] maestro.Maestro.invoke: Getting device info 16:57:55.538 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 16:57:55.589 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 16:57:55.591 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-basic}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:57:55.594 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 16:57:55.594 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 16:57:55.598 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:57:55.599 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 16:57:55.599 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 16:57:55.601 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:57:56.360 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 16:57:56.450 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 16:57:56.451 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 16:57:56.452 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:57:58.582 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 16:57:59.411 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:57:59.413 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 16:57:59.413 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:57:59.413 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:58:01.060 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:58:01.061 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 16:58:01.063 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 16:58:01.065 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:58:01.119 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=425, width=954, height=57)) 16:58:01.912 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:58:01.912 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 16:58:01.912 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:58:01.912 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:58:03.259 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:58:03.259 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 16:58:03.260 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" RUNNING 16:58:03.260 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Checkout, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:58:03.330 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Checkout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[451,572][629,629], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=451, y=572, width=178, height=57)) 16:58:04.142 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:58:04.142 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 600) using hierarchy based logic for wait 16:58:04.142 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:58:04.143 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:58:04.535 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:58:04.535 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:58:05.030 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by screenshot (d=7.7559667). Proceed. 16:58:05.030 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Checkout" COMPLETED 16:58:05.031 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 16:58:05.031 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:58:05.612 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 16:58:05.613 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" RUNNING 16:58:05.615 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:58:12.066 [ INFO] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandWarned: Element not found: Text matching regex: Card 16:58:12.067 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=true, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=true)), logMessages=[], insight=Insight(message=Element not found: Text matching regex: Card, level=WARNING), aiReasoning=null, labeledCommand=null) 16:58:12.071 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on (Optional) "Card" WARNED 16:58:12.074 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 16:58:12.074 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:58:12.146 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" RUNNING 16:58:12.148 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Card number, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:58:22.078 [ERROR] maestro.orchestra.Orchestra.executeCommands: [Command execution] CommandFailed: Element not found: Text matching regex: Card number 16:58:22.081 [ INFO] maestro.Maestro.takeScreenshot: Taking screenshot 16:58:22.081 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:58:22.161 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Card number" FAILED 16:58:22.534 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 16:58:27.538 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 16:58:27.539 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 16:58:27.539 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 16:58:27.539 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 16:58:27.539 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 16:58:27.539 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 16:58:27.757 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 16:58:27.758 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 16:58:27.758 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 16:58:27.758 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 16:58:27.761 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel