5

我在这里的 detox repo 上为此创建了一个问题。

我有一个使用JestDetox测试的 React Native 应用程序。

在本地,排毒测试运行没有问题(也在其他开发机器上进行了完整性检查)。但是,在Circleci上的macOS 盒子中运行时,它们从未通过。

Detox 的调试输出看起来像是 Detox 在模拟器上的初始应用程序设置之后永远很忙,但在那之后没有任何进展。

涉及的相关版本:

  • 排毒:7.3.3
  • 反应原生:0.55.1
  • 节点:8.9.1
  • 设备:iPhone 7 (11.2)
  • Xcode:9.2.0
  • macOS:10.12.6

进入“挂起”状态后的排毒日志片段:

    detox verb ws
    detox verb ws send: {"type":"reactNativeReload","params":{},"messageId":-1000}
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":4}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":4,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":4}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":5}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":5,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":5}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":6}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":6,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":6}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":7}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":7,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":7}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":8}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":8,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":8}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":9}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":9,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":9}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":10}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":10,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":10}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":11}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":11,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":11}}
    detox verb ws
    detox info Sync Dispatch Queue: com.apple.main-thread
    detox verb ws send: {"type":"currentStatus","params":{},"messageId":12}
    detox verb ws onMessage: {"type":"currentStatusResult","messageId":12,"params":{"state":"busy","resources":[{"name":"Dispatch Queue","info":{"queue":"<OS_dispatch_queue_main: com.apple.main-thread[0x1112b9dc0] = { xref = -2147483648, ref = -2147483648, sref = 1, target = com.apple.root.default-qos.overcommit[0x1112bb300], width = 0x1, state = 0x001ffe9e00000400, dirty, max qos 6, in-flight = 0, thread = 0x403 }>","prettyPrint":"com.apple.main-thread"}}],"messageId":12}}

我的问题是;Detox 是否因为在 Circleci 上运行的低资源(计算)环境而挂起(有没有人在 Circleci 上运行大型 Detox 套件)?

4

1 回答 1

2

将 Nodejs 版本降级到 < 8.8,现在一切都按预期运行。

于 2018-05-15T13:11:28.207 回答