【问题标题】:XCTAssertThrows crashes on 32 bits architecturesXCTAssertThrows 在 32 位架构上崩溃
【发布时间】:2015-05-18 22:16:51
【问题描述】:

由于某种原因,有时,未捕获的异常会使测试在 32 位设备上崩溃,即使它们是由在 XCTAssertThrows 测试中发起的调用引起的,这恰好应该测试是否存在异常被抛出。使测试崩溃的异常违背了目的。

【问题讨论】:

  • 你在使用 OCMock 吗?我想知道是否有一些交互(或错误)导致了这种情况,因为我们在两个不同的项目中都有它。

标签: ios unit-testing exception 32bit-64bit


【解决方案1】:

正如您在 Xcode 6.3 中描述的那样,这已损坏 - 如果您回到 6.2,它应该可以正常工作。我将检查即将发布的 Xcode 版本是否有修复(6.3.2 仍然失败)。

将 .m 添加到测试目标可能会导致其他重复问题,因此充其量只是短期解决方法。

【讨论】:

  • 我在 6.4 中仍然看到这种行为 :(
  • 我有一阵子没有检查过 - XCTAssertThrows 再次使用 Xcode 7.2 处理 32 位设备。它可能在 7.x 的早期版本中有效,我只是没有尝试。
【解决方案2】:

仍然不知道原因,但通过简单地将测试类添加到测试目标来解决它。

【讨论】:

    猜你喜欢
    • 2020-03-17
    • 1970-01-01
    • 2012-04-17
    • 1970-01-01
    • 2015-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多