排毒测试无法运行

问题描述

我一整天都在尝试为我们的移动应用运行 Detox 测试,但一直没有成功。

我使用的相关 npm 版本:

"detox": "^17.14.6","jest": "^26.6.3","jest-circus": "^26.6.3","jest-cli": "^26.6.3",

detoxrc.json

{
  "testRunner": "jest","runnerConfig": "e2e/config.json","configurations": {
    "ios.sim.debug": {
      "binaryPath": "ios/build/Build/Products/Debug-iphonesimulator/Test.app","build": "xcodebuild -workspace ios/Test.xcworkspace -scheme Test -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build","type": "ios.simulator","device": {
        "type": "iPhone 11 Pro"
      }
    }
  }
}

test.e2e.js

describe('Overview',() => {
  beforeEach(async () => {
    await device.reloadReactNative();
  });

  it('should open the overviewTab',async () => {
    await expect(element(by.id('overviewTab'))).toBeVisible();
  });
});

超时错误

Overview
    ✕ should open the overviewTab (120006 ms)

  ● Overview › should open the overviewTab

    thrown: "Exceeded timeout of 120000 ms for a hook.
    Use jest.setTimeout(newTimeout) to increase the timeout value,if this is a long-running test."

      1 | describe('Overview',() => {
    > 2 |   beforeEach(async () => {
        |   ^
      3 |     await device.reloadReactNative();
      4 |   });
      5 |

      at test.e2e.js:2:3
      at Object.<anonymous> (test.e2e.js:1:1)

当我运行 detox test --loglevel trace 时,这是整个日志:

kevin@ip-192-168-0-203 mobile-app % detox test --loglevel trace
detox[9009] INFO:  [test.js] loglevel="trace" useCustomLogger=true DetoX_START_TIMESTAMP=1608416281857 reportSpecs=true jest --config e2e/config.json --testNamePattern '^((?!:android:).)*$' --maxWorkers 1 e2e
detox[9010] TRACE: [Detox.js/DetoX_CREATE] created a Detox instance with config:
{"artifactsConfig":{"rootDir":"artifacts/ios.sim.debug.2020-12-19 22-18-01Z","plugins":{"log":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"screenshot":{"enabled":true,"shouldTakeAutomaticSnapshots":false,"video":{"enabled":false,"instruments":{"enabled":false,"timeline":{"enabled":false}},"pathBuilder":{"_rootDir":"artifacts/ios.sim.debug.2020-12-19 22-18-01Z"}},"behaviorConfig":{"init":{"reinstallApp":true,"exposeGlobals":true,"launchApp":true},"cleanup":{"shutdownDevice":false}},"cliConfig":{"loglevel":"trace","useCustomLogger":"true"},"deviceConfig":{"binaryPath":"ios/build/Build/Products/Debug-iphonesimulator/Test.app","build":"xcodebuild -workspace ios/Test.xcworkspace -scheme Test -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build","type":"ios.simulator","device":{"type":"iPhone 11 Pro"}},"runnerConfig":{"testRunner":"jest","runnerConfig":"e2e/config.json","specs":"e2e"},"sessionConfig":{"autoStart":true,"server":"ws://localhost:62012","sessionId":"e836caba-d171-3480-4931-9ee02f21322b","debugSynchronization":false},"errorBuilder":{"filepath":"/Users/kevin/Projects/test/mobile-app/.detoxrc.json","contents":{"testRunner":"jest","configurations":{"ios.sim.debug":{"binaryPath":"ios/build/Build/Products/Debug-iphonesimulator/Test.app","device":{"type":"iPhone 11 Pro"}}}},"configurationName":"ios.sim.debug"}}
detox[9010] INFO:  [DetoxServer.js] server listening on localhost:62012...
detox[9010] DEBUG: [AsyncWebSocket.js/WEBSOCKET_OPEN] opened web socket to: ws://localhost:62012
  detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"login","params":{"sessionId":"e836caba-d171-3480-4931-9ee02f21322b","role":"tester"},"messageId":0}
detox[9010] DEBUG: [DetoxServer.js/LOGIN] role=tester,sessionId=e836caba-d171-3480-4931-9ee02f21322b
detox[9010] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=tester,sessionId=e836caba-d171-3480-4931-9ee02f21322b
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_MESSAGE] {"type":"loginSuccess","messageId":0}

detox[9010] DEBUG: [exec.js/EXEC_CMD,#0] applesimutils --list --byType "iPhone 11 Pro"
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#0] [
  {
    "os" : {
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/Runtimes\/iOS.simruntime","buildversion" : "18C61","runtimeRoot" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/Runtimes\/iOS.simruntime\/Contents\/Resources\/RuntimeRoot","identifier" : "com.apple.CoreSimulator.SimRuntime.iOS-14-3","version" : "14.3","isAvailable" : true,"name" : "iOS 14.3"
    },"dataPath" : "\/Users\/kevin\/Library\/Developer\/CoreSimulator\/Devices\/ED9068B9-5E52-404E-B689-ABA33E32E0A1\/data","logPath" : "\/Users\/kevin\/Library\/Logs\/CoreSimulator\/ED9068B9-5E52-404E-B689-ABA33E32E0A1","udid" : "ED9068B9-5E52-404E-B689-ABA33E32E0A1","deviceType" : {
      "minRuntimeVersion" : 851968,"bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 11 Pro.simdevicetype","maxRuntimeVersion" : 4294967295,"name" : "iPhone 11 Pro","identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-11-Pro","productFamily" : "iPhone"
    },"deviceTypeIdentifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-11-Pro","state" : "Booted","name" : "iPhone 11 Pro"
  }
  ]

detox[9010] DEBUG: [exec.js/EXEC_CMD,#1] applesimutils --list --byId ED9068B9-5E52-404E-B689-ABA33E32E0A1 --maxResults 1
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#1] [
  {
    "os" : {
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Library\/Developer\/CoreSimulator\/Profiles\/Runtimes\/iOS.simruntime","name" : "iPhone 11 Pro"
  }
  ]

detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onBootDevice({
  coldBoot: false,deviceid: 'ED9068B9-5E52-404E-B689-ABA33E32E0A1',type: 'iPhone 11 Pro'
})
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onBeforeUninstallApp({
  deviceid: 'ED9068B9-5E52-404E-B689-ABA33E32E0A1',bundleId: 'io.test.ios-dev'
})
detox[9010] DEBUG: [exec.js/EXEC_CMD,#2] /usr/bin/xcrun simctl uninstall ED9068B9-5E52-404E-B689-ABA33E32E0A1 io.test.ios-dev
detox[9010] DEBUG: [exec.js/EXEC_TRY,#2] Uninstalling io.test.ios-dev...
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#2]
detox[9010] DEBUG: [exec.js/EXEC_SUCCESS,#2] io.test.ios-dev uninstalled
detox[9010] DEBUG: [exec.js/EXEC_CMD,#3] /usr/bin/xcrun simctl install ED9068B9-5E52-404E-B689-ABA33E32E0A1 "/Users/kevin/Projects/test/mobile-app/ios/build/Build/Products/Debug-iphonesimulator/Test.app"
detox[9010] DEBUG: [exec.js/EXEC_TRY,#3] Installing /Users/kevin/Projects/test/mobile-app/ios/build/Build/Products/Debug-iphonesimulator/Test.app...
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#3]
detox[9010] DEBUG: [exec.js/EXEC_SUCCESS,#3] /Users/kevin/Projects/test/mobile-app/ios/build/Build/Products/Debug-iphonesimulator/Test.app installed
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onBeforeTerminateApp({
  deviceid: 'ED9068B9-5E52-404E-B689-ABA33E32E0A1',#4] /usr/bin/xcrun simctl terminate ED9068B9-5E52-404E-B689-ABA33E32E0A1 io.test.ios-dev
detox[9010] DEBUG: [exec.js/EXEC_TRY,#4] Terminating io.test.ios-dev...
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#4]
detox[9010] DEBUG: [exec.js/EXEC_SUCCESS,#4] io.test.ios-dev terminated
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onTerminateApp({
  deviceid: 'ED9068B9-5E52-404E-B689-ABA33E32E0A1',bundleId: 'io.test.ios-dev'
})
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onBeforelaunchApp({
  bundleId: 'io.test.ios-dev',launchArgs: {
    detoxServer: 'ws://localhost:62012',detoxSessionId: 'e836caba-d171-3480-4931-9ee02f21322b'
  }
})
detox[9010] DEBUG: [exec.js/EXEC_CMD,#5] SIMCTL_CHILD_DYLD_INSERT_LIBRARIES="/Users/kevin/Library/Detox/ios/1027ad4db0a05cf5e2f8569ce0a4fb6f1ac16bcb/Detox.framework/Detox" /usr/bin/xcrun simctl launch ED9068B9-5E52-404E-B689-ABA33E32E0A1 io.test.ios-dev --args -detoxServer "ws://localhost:62012" -detoxSessionId "e836caba-d171-3480-4931-9ee02f21322b" -detoxdisableHierarchyDump "YES"
detox[9010] DEBUG: [exec.js/EXEC_TRY,#5] Launching io.test.ios-dev...
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#5] io.test.ios-dev: 9047

detox[9010] DEBUG: [exec.js/EXEC_CMD,#6] /usr/bin/xcrun simctl get_app_container ED9068B9-5E52-404E-B689-ABA33E32E0A1 io.test.ios-dev
detox[9010] TRACE: [exec.js/EXEC_SUCCESS,#6] /Users/kevin/Library/Developer/CoreSimulator/Devices/ED9068B9-5E52-404E-B689-ABA33E32E0A1/data/Containers/Bundle/Application/CA9DB8EE-74C0-4BE1-9F2C-0FF3CC4D9AB0/Test.app

detox[9010] INFO:  [AppleSimutils.js] io.test.ios-dev launched. To watch simulator logs,run:
/usr/bin/xcrun simctl spawn ED9068B9-5E52-404E-B689-ABA33E32E0A1 log stream --level debug --style compact --predicate 'process == "Test"'
detox[9047] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onLaunchApp({
  bundleId: 'io.test.ios-dev',detoxSessionId: 'e836caba-d171-3480-4931-9ee02f21322b',detoxdisableHierarchyDump: 'YES'
  },pid: 9047
})
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"isReady","params":{},"messageId":-1000}
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=tester action=isReady (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected,cannot fw action (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] DEBUG: [DetoxServer.js/LOGIN] role=testee,sessionId=e836caba-d171-3480-4931-9ee02f21322b
detox[9010] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=testee,sessionId=e836caba-d171-3480-4931-9ee02f21322b
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=testee action=ready (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_MESSAGE] {"type":"ready","messageId":-1000}

detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"waitForActive","messageId":1}
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=tester action=waitForActive (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=testee action=waitForActiveDone (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=testee action=ready (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_MESSAGE] {"type":"waitForActiveDone","messageId":1}

detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_MESSAGE] {"type":"ready","messageId":-1000,"params":{}}

detox[9047] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onAppReady({
  deviceid: 'ED9068B9-5E52-404E-B689-ABA33E32E0A1',bundleId: 'io.test.ios-dev',pid: 9047
})
detox[9010] INFO:  at e2e/test.e2e.js:21:11
bafke
ROOT_DESCRIBE_BLOCK[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onRunDescribeStart({ name: 'ROOT_DESCRIBE_BLOCK' })
Overview[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onRunDescribeStart({ name: 'Overview' })
detox[9010] INFO:  Overview is assigned to ED9068B9-5E52-404E-B689-ABA33E32E0A1 {"type":"iPhone 11 Pro"}
detox[9010] INFO:  Overview: should open the overviewTab
detox[9010] TRACE: [Detox.js/DetoX_BEFORE_EACH] running test: "Overview should open the overviewTab"
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onTestStart({
  title: 'should open the overviewTab',fullName: 'Overview should open the overviewTab',status: 'running',invocations: 1
})
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"reactNativeReload","messageId":-1000}
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=tester action=reactNativeReload (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onHookFailure({
  error: 'Exceeded timeout of 120000 ms for a hook.\n' +
    'Use jest.setTimeout(newTimeout) to increase the timeout value,if this is a long-running test.',hook: 'beforeEach'
})
detox[9010] TRACE: [Detox.js/DetoX_AFTER_EACH] Failed test: "Overview should open the overviewTab"
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onTestDone({
  title: 'should open the overviewTab',status: 'Failed',invocations: 1,timedOut: true
})
detox[9010] WARN:  [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
  (id = -1000) reactNativeReload: {}

That might be the reason why the test "Overview should open the overviewTab" has timed out.

  detox[9010] INFO:  Overview: should open the overviewTab [FAIL]
Overview[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onRunDescribeFinish({ name: 'Overview' })

ROOT_DESCRIBE_BLOCK[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onRunDescribeFinish({ name: 'ROOT_DESCRIBE_BLOCK' })
detox[9010] TRACE: [ArtifactsManager.js/LIFECYCLE] artifactsManager.onBeforeCleanup()
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"cleanup","params":{"stopRunner":true},"messageId":-49642}
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=tester action=cleanup (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [DetoxServer.js/MESSAGE] role=testee action=cleanupDone (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] TRACE: [AsyncWebSocket.js/WEBSOCKET_MESSAGE] {"params":{},"type":"cleanupDone","messageId":-49642}

detox[9010] DEBUG: [DetoxServer.js/disCONNECT] role=tester,sessionId=e836caba-d171-3480-4931-9ee02f21322b
detox[9010] DEBUG: [DetoxServer.js/disCONNECT] role=testee,sessionId=e836caba-d171-3480-4931-9ee02f21322b
detox[9010] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=tester not connected,cannot fw action (sessionId=e836caba-d171-3480-4931-9ee02f21322b)
detox[9010] DEBUG: [DetoxServer.js/WS_CLOSE] Detox server connections terminated gracefully
FAIL  e2e/test.e2e.js (133.272 s)
Overview
    ✕ should open the overviewTab (120006 ms)

● Overview › should open the overviewTab

thrown: "Exceeded timeout of 120000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value,if this is a long-running test."

1 | describe('Overview',() => {
> 2 |   beforeEach(async () => {
  |   ^
    3 |     await device.reloadReactNative();
    4 |   });
  5 |

  at test.e2e.js:2:3
  at Object.<anonymous> (test.e2e.js:1:1)

  detox[9009] ERROR: [cli.js] Error: Command Failed: jest --config e2e/config.json --testNamePattern '^((?!:android:).)*$' --maxWorkers 1 e2e

编辑

我设法通过使用 Synchronization troubleshooting 中的 detox test --debug-synchronization 200 获得了更多信息,这导致了

detox[12636] INFO:  [actions.js] Sync WXRunLoopIdlingResource: React Native thread is busy.
detox[12636] INFO:  [actions.js] Sync dispatch Queue: com.apple.main-thread

还有一个关于调用 firebase 日志的日志没有得到满足。

当我还使用 --loglevel trace 时,我不断收到此日志:

detox[12636] INFO:  [actions.js] Sync WXRunLoopIdlingResource: React Native thread is busy.
detox[12636] INFO:  [actions.js] Sync dispatch Queue: com.apple.main-thread
detox[12636] TRACE: [AsyncWebSocket.js/WEBSOCKET_SEND] {"type":"currentStatus","messageId":15}
detox[12636] TRACE: [DetoxServer.js/MESSAGE] role=tester action=currentStatus (sessionId=d7428263-4169-e8b4-756d-cc5b3c3d0f73)
detox[12636] TRACE: [DetoxServer.js/MESSAGE] role=testee action=currentStatusResult (sessionId=d7428263-4169-e8b4-756d-cc5b3c3d0f73)
detox[12636] TRACE: [AsyncWebSocket.js/WEBSOCKET_MESSAGE] {"type":"currentStatusResult","params":{"state":"busy","resources":[{"name":"WXRunLoopIdlingResource","info":{"runLoop":"<CFRunLoop 0x600000c7c700 [0x7fff8002e8c0]>{wakeup port = 0x5a17,stopped = false,ignoreWakeUps = true,\ncurrent mode = (none),\ncommon modes = <CFBasicHash 0x600003e18f30 [0x7fff8002e8c0]>{type = mutable set,count = 1,\nentries =>\n\t2 : <CFString 0x7fff801ab7e8 [0x7fff8002e8c0]>{contents = \"kcfRunLoopDefaultMode\"}\n}\n,\ncommon mode items = <CFBasicHash 0x600003e1bcf0 [0x7fff8002e8c0]>{type = mutable set,count = 4,\nentries =>\n\t0 : <CFRunLoopSource 0x60000057ae80 [0x7fff8002e8c0]>{signalled = No,valid = Yes,order = 0,context = <CFRunLoopSource context>{version = 0,info = 0x60000322ab60,callout = __NSThreadPerformPerform (0x7fff208581ee)}}\n\t2 : <CFRunLoopSource 0x600000519ec0 [0x7fff8002e8c0]>{signalled = No,info = 0x60000320e470,callout = __NSThreadPerformPerform (0x7fff208581ee)}}\n\t3 : <CFRunLoopSource 0x600000564a80 [0x7fff8002e8c0]>{signalled = Yes,info = 0x114fc0000,callout = _ZN3WTF7RunLoop11performWorkEPv (0x7fff32220270)}}\n\t4 : <CFRunLoopTimer 0x6000005600c0 [0x7fff8002e8c0]>{valid = Yes,firing = No,interval = 0,tolerance = 0,next fire date = 630235923 (486.399006 @ 357970975424457),callout = _ZZN3WTF7RunLoop9TimerBase5startENS_7SecondsEbEN3$_18__invokeEP16__CFRunLoopTimerPv (0x7fff32220bb0 / 0x7fff32220bb0) (/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/JavaScriptCore.framework/JavaScriptCore),context = <CFRunLoopTimer context 0x114ff65a0>}\n}\n,\nmodes = <CFBasicHash 0x600003e1bdb0 [0x7fff8002e8c0]>{type = mutable set,count = 2,\nentries =>\n\t0 : <CFRunLoopMode 0x600000b044e0 [0x7fff8002e8c0]>{name = kcfRunLoopCommonModes,port set = 0xc307,queue = 0x600001e13a80,source = 0x600001e12c00 (not fired),timer port = 0xc503,\n\tsources0 = (null),\n\tsources1 = (null),\n\tobservers = (null),\n\ttimers = (null),\n\tcurrently 630235437 (357484576475625) / soft deadline in: 1.84463866e+10 sec (@ -1) / hard deadline in: 1.84463866e+10 sec (@ -1)\n},\n\n\t2 : <CFRunLoopMode 0x600000b6cdd0 [0x7fff8002e8c0]>{name = kcfRunLoopDefaultMode,port set = 0x13a0f,queue = 0x600001e3e800,source = 0x600001e3db00 (not fired),timer port = 0x13c27,\n\tsources0 = <CFBasicHash 0x600003e1a7c0 [0x7fff8002e8c0]>{type = mutable set,count = 0,\nentries =>\n}\n,\n\tsources1 = <CFBasicHash 0x600003e1bea0 [0x7fff8002e8c0]>{type = mutable set,\n\tobservers = (\n    \"<CFRunLoopObserver 0x600000112b20 [0x7fff8002e8c0]>{valid = Yes,activities = 0xe7,repeats = Yes,callout = _runLoopObserverWithBlockContext (0x7fff2038c504),context = <CFRunLoopObserver context 0x600003ec0090>}\"\n),\n\ttimers = <CFArray 0x600001455f20 [0x7fff8002e8c0]>{type = mutable-small,values = (\n\t0 : <CFRunLoopTimer 0x6000005600c0 [0x7fff8002e8c0]>{valid = Yes,next fire date = 630235923 (486.398864 @ 357970975424457),context = <CFRunLoopTimer context 0x114ff65a0>}\n)},\n\tcurrently 630235437 (357484576488240) / soft deadline in: 486.398936 sec (@ 357970975424457) / hard deadline in: 486.398936 sec (@ 357970975424457)\n},\n\n}\n}\n","prettyPrint":"React Native thread is busy."}},{"name":"dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x7fff86d30c80] = { xref = -2147483648,ref = -2147483648,sref = 1,target = com.apple.root.default-qos.overcommit[0x7fff86d31100],width = 0x1,state = 0x001ffe9000000300,dirty,in-flight = 0,thread = 0x303 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":15},"messageId":15}

所以我将继续检查这可能来自哪里。我尝试从源代码的最开始添加日志,但似乎没有任何结果。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)