NativeScript / NativeScript/plugins

[@nativescript/detox] Tests Crash after updating to XCode 14

未關閉
#484 0 則留言 2 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

主要語言
TypeScript
星號
206
分支
123
平均合併
2 天 1 小時
30 天內合併 PR
1

描述

Description: After updating to XCode 14.3 and macOS 13.3.1 running iOS tests using detox seems to crash when attempting to close and open a new instance of the app between test suites when using await device.launchApp with param newInstance:true.

I'll try to add more details on this as I find it and post it here. Thank you!

System Info:

XCode: 14.3
macOS:  13.3.1
iOS Simulator: iPhone 11
Simulator iOS version: 14.2 (also tried on 16.4)
@nativescript/detox: 1.0.1
@nativescript/core: 8.5.1
@nativescript/types: 8.5.0
@nativescript/ios: 8.5.1
@nativescript/android: 8.5.0

Error Info:

09:58:30.342 detox[55115] ERROR: [WS_ERROR] The app has crashed, see the details below:

Signal 6 was raised
(
        0   Detox                               0x0000000108e25c15 +[NSThread(DetoxUtils) dtx_demangledCallStackSymbols] + 37
        1   Detox                               0x0000000108e28670 __DTXHandleCrash + 464
        2   Detox                               0x0000000108e28db1 __DTXHandleSignal + 59
        3   libsystem_platform.dylib            0x00007fff5e73d5ed _sigtramp + 29
        4   ???                                 0x0000000000000001 0x0 + 1
        5   libsystem_c.dylib                   0x00007fff200fab94 abort + 120
        6   libc++abi.dylib                     0x00007fff2024f818 abort_message + 231
        7   libc++abi.dylib                     0x00007fff20240e65 demangling_terminate_handler() + 242
        8   libobjc.A.dylib                     0x00007fff201780d9 _objc_terminate() + 104
        9   Sentry                              0x000000010a65008e CPPExceptionTerminate() + 2302
        10  Detox                               0x0000000108e293fc __dtx_terminate() + 499
        11  libc++abi.dylib                     0x00007fff2024ec47 std::__terminate(void (*)()) + 8
        12  libc++abi.dylib                     0x00007fff2024ebe9 std::terminate() + 41
        13  NativeScript                        0x000000010900c605 std::__1::unique_ptr<tns::Runtime, std::__1::default_delete<tns::Runtime> >::reset(tns::Runtime*) + 25
        14  libsystem_c.dylib                   0x00007fff200d9b15 __cxa_finalize_ranges + 316
        15  libsystem_c.dylib                   0x00007fff200d9e4f exit + 46
        16  UIKitCore                           0x00007fff2467fdc0 -[UIApplication terminateWithSuccess] + 0
        17  UIKitCore                           0x00007fff23ca4d75 __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke_2.184 + 225
        18  UIKitCore                           0x00007fff23acd8ed -[UIScene _enqueuePostSettingsUpdateResponseBlock:inPhase:] + 272
        19  UIKitCore                           0x00007fff23ca4928 __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke_2 + 1491
        20  UIKitCore                           0x00007fff2423120a _UIScenePerformActionsWithLifecycleActionMask + 88
        21  UIKitCore                           0x00007fff23ca42ca __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke + 198
        22  UIKitCore                           0x00007fff23ca3d8e -[_UISceneLifecycleMultiplexer _performBlock:withApplicationOfDeactivationReasons:fromReasons:] + 474
        23  UIKitCore                           0x00007fff23ca40fb -[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:] + 819
        24  UIKitCore                           0x00007fff23ca3ae5 -[_UISceneLifecycleMultiplexer forceExitWithTransitionContext:scene:] + 225
        25  UIKitCore                           0x00007fff246765a9 -[UIApplication workspaceShouldExit:withTransitionContext:] + 169
        26  FrontBoardServices                  0x00007fff25a7b187 -[FBSUIApplicationWorkspaceShim workspaceShouldExit:withTransitionContext:] + 79
        27  FrontBoardServices                  0x00007fff25aa61d6 __63-[FBSWorkspaceScenesClient willTerminateWithTransitionContext:]_block_invoke_2 + 76
        28  FrontBoardServices                  0x00007fff25a8bad5 -[FBSWorkspace _calloutQueue_executeCalloutFromSource:withBlock:] + 209
        29  FrontBoardServices                  0x00007fff25aa6175 __63-[FBSWorkspaceScenesClient willTerminateWithTransitionContext:]_block_invoke + 106
        30  libdispatch.dylib                   0x00007fff20106508 _dispatch_client_callout + 8
        31  libdispatch.dylib                   0x00007fff20109052 _dispatch_block_invoke_direct + 281
        32  FrontBoardServices                  0x00007fff25acc7a5 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 30
        33  FrontBoardServices                  0x00007fff25acc48b -[FBSSerialQueue _targetQueue_performNextIfPossible] + 433
        34  FrontBoardServices                  0x00007fff25acc950 -[FBSSerialQueue _performNextFromRunLoopSource] + 22
        35  CoreFoundation                      0x00007fff2038c37a __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
        36  CoreFoundation                      0x00007fff2038c272 __CFRunLoopDoSource0 + 180
        37  CoreFoundation                      0x00007fff2038b754 __CFRunLoopDoSources0 + 248
        38  CoreFoundation                      0x00007fff20385f1f __CFRunLoopRun + 878
        39  CoreFoundation                      0x00007fff203856c6 CFRunLoopRunSpecific + 567
        40  GraphicsServices                    0x00007fff2b76adb3 GSEventRunModal + 139
        41  UIKitCore                           0x00007fff24675187 -[UIApplication _run] + 912
        42  UIKitCore                           0x00007fff2467a038 UIApplicationMain + 101
        43  NativeScript                        0x0000000109020fbd ffi_call_unix64 + 85
        44  ???                                 0x00007ff7b813fe59 0x0 + 140701921967705
)
09:58:39.565 detox[55115] ERROR: [WS_ERROR] The app has crashed, see the details below:

C++ exception of type “std::__1::system_error” was thrown
(
        0   Detox                               0x000000010bfc7c15 +[NSThread(DetoxUtils) dtx_demangledCallStackSymbols] + 37
        1   Detox                               0x000000010bfca869 __DTXHandleCrash + 969
        2   Detox                               0x000000010bfcb3ed __dtx_terminate() + 484
        3   libc++abi.dylib                     0x00007fff2024ec47 std::__terminate(void (*)()) + 8
        4   libc++abi.dylib                     0x00007fff2024ebe9 std::terminate() + 41
        5   NativeScript                        0x000000010c1ae605 std::__1::unique_ptr<tns::Runtime, std::__1::default_delete<tns::Runtime> >::reset(tns::Runtime*) + 25
        6   libsystem_c.dylib                   0x00007fff200d9b15 __cxa_finalize_ranges + 316
        7   libsystem_c.dylib                   0x00007fff200d9e4f exit + 46
        8   UIKitCore                           0x00007fff2467fdc0 -[UIApplication terminateWithSuccess] + 0
        9   UIKitCore                           0x00007fff23ca4d75 __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke_2.184 + 225
        10  UIKitCore                           0x00007fff23acd8ed -[UIScene _enqueuePostSettingsUpdateResponseBlock:inPhase:] + 272
        11  UIKitCore                           0x00007fff23ca4928 __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke_2 + 1491
        12  UIKitCore                           0x00007fff2423120a _UIScenePerformActionsWithLifecycleActionMask + 88
        13  UIKitCore                           0x00007fff23ca42ca __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke + 198
        14  UIKitCore                           0x00007fff23ca3d8e -[_UISceneLifecycleMultiplexer _performBlock:withApplicationOfDeactivationReasons:fromReasons:] + 474
        15  UIKitCore                           0x00007fff23ca40fb -[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:] + 819
        16  UIKitCore                           0x00007fff23ca3ae5 -[_UISceneLifecycleMultiplexer forceExitWithTransitionContext:scene:] + 225
        17  UIKitCore                           0x00007fff246765a9 -[UIApplication workspaceShouldExit:withTransitionContext:] + 169
        18  FrontBoardServices                  0x00007fff25a7b187 -[FBSUIApplicationWorkspaceShim workspaceShouldExit:withTransitionContext:] + 79
        19  FrontBoardServices                  0x00007fff25aa61d6 __63-[FBSWorkspaceScenesClient willTerminateWithTransitionContext:]_block_invoke_2 + 76
        20  FrontBoardServices                  0x00007fff25a8bad5 -[FBSWorkspace _calloutQueue_executeCalloutFromSource:withBlock:] + 209
        21  FrontBoardServices                  0x00007fff25aa6175 __63-[FBSWorkspaceScenesClient willTerminateWithTransitionContext:]_block_invoke + 106
        22  libdispatch.dylib                   0x00007fff20106508 _dispatch_client_callout + 8
        23  libdispatch.dylib                   0x00007fff20109052 _dispatch_block_invoke_direct + 281
        24  FrontBoardServices                  0x00007fff25acc7a5 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 30
        25  FrontBoardServices                  0x00007fff25acc48b -[FBSSerialQueue _targetQueue_performNextIfPossible] + 433
        26  FrontBoardServices                  0x00007fff25acc950 -[FBSSerialQueue _performNextFromRunLoopSource] + 22
        27  CoreFoundation                      0x00007fff2038c37a __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
        28  CoreFoundation                      0x00007fff2038c272 __CFRunLoopDoSource0 + 180
        29  CoreFoundation                      0x00007fff2038b7b6 __CFRunLoopDoSources0 + 346
        30  CoreFoundation                      0x00007fff20385f1f __CFRunLoopRun + 878
        31  CoreFoundation                      0x00007fff203856c6 CFRunLoopRunSpecific + 567
        32  GraphicsServices                    0x00007fff2b76adb3 GSEventRunModal + 139
        33  UIKitCore                           0x00007fff24675187 -[UIApplication _run] + 912
        34  UIKitCore                           0x00007fff2467a038 UIApplicationMain + 101
        35  NativeScript                        0x000000010c1c2fbd ffi_call_unix64 + 85
        36  ???                                 0x00007ff7b4f9de59 0x0 + 140701869923929
)

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

研究方向

報告提到 @nativescript/detox、帶有 newInstance:true 的 device.launchApp,以及 XCode/macOS/iOS 版本,但沒有提供原始碼檔案或測試進入點。先重現測試套件之間重新開啟應用程式時發生的當機,然後追蹤 teardown 與重新啟動路徑。在所回報的環境中,相同情境不再當機時,即表示完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
ios
領域
mobile-dev, testing-qa
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
需要釐清
新手友好度
25/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。