在我的 UITests 中,我想将元素的图像与来自 .xcassets 的图像进行比较:
let referenceImage = UIImage(named: "referenceImage")
guard referenceImage != nil else {
print("didn't find referenceImage image in assets")
XCTAssert(false)
return
}
let cellImage = myCell.images.elementBoundByIndex(0)
let imagesEqual = (referenceImage!.isEqual(cellImage))
XCTAssert(imagesEqual)
referenceImage
始终为零,尽管我已将 Assets.xcassets 添加到我的 UITests 目标(在 UITest 目标->构建阶段/复制包资源中进行了双重检查)。
这里有什么问题吗?
UIImage 使用主包来查找图像。 测试包是一个不同的包。 你应该使用 UIImage 的
init(named:in:compatibleWith
您可以在其中明确指定您的测试包。
您可以使用 Bundle 的 initForClass 获取测试目标的包, 传递你当前的测试类。
关于ios - UIImage 在 UITests 中返回 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41165533/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |