XCTAssertEqual 失败:("nan") 不等于 Swift 中的 ("nan")

XCTAssertEqual failed: ("nan") is not equal to ("nan") in Swift

当我 运行 以下测试用例时,我得到 XCTAssertEqual failed: ("nan") is not equal to ("nan") 错误。

 XCTAssertEqual(0.0 / 0.0, Double.nan)

我该如何解决这个错误?

正如 Joakim 所说,NaN 永远不等于任何值,包括它自己。

您需要使用 isNaN:

重写您的代码
let someValue = 0.0 / 0.0
XCTAssertFalse(someValue.isNaN) // Will detect that someValue is a NaN