我在Xcode的Swift单元测试中遇到了一个非常奇怪的错误。当我存储一个吸气剂的Float
值时,它可以工作,但是当我将相同的吸气剂传递给XCTAssertEqual
时,它却失败了,因为XCT函数接收的值是0
,而不是实际的计算值(在这种情况下为800
)。
有人碰到这个吗?
// Rectangle.width = get { return left - right }
let w = metrics.imageDestinationRectangle.width
let h = metrics.imageDestinationRectangle.height
// these work okay
XCTAssertEqual(w, 800, accuracy: 0.001)
XCTAssertEqual(h, 533, accuracy: 0.001)
// these fail: "0" is not equal to "800"
XCTAssertEqual(metrics.imageDestinationRectangle.width, 800, accuracy: 0.001)
XCTAssertEqual(metrics.imageDestinationRectangle.height, 533, accuracy: 0.001)
答案 0 :(得分:0)
嗯,我不知道发生了什么,但是我做了一些其他相关的编码,然后尝试将吸气剂直接放入XCTAssertEqual参数中,并成功了。代码均未更改。奇怪!