2016-12-15 21 views
2

無我想比較部件的圖像與.xcassets圖像:UIImage的回報UITests我UITests

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目標 - >構建階段/複製束資源)。

這裏有什麼問題?

+0

這裏工作很好。對不起:-) – shallowThought

回答

2

UIImage使用主包來查找圖像。 測試包是一個不同的包。 您應該使用的UIImage的

init(named:in:compatibleWith:) 

在那裏你可以顯式指定測試包。

您可以通過Bundle的initForClass獲得測試目標的包,並傳入您當前的測試類。

+0

把它改成這樣: let bundle = NSBundle(forClass:object_getClass(s​​elf)) let referenceImage = UIImage(named:「referenceImage」,inBundle:bundle,compatibleWithTraitCollection:nil) Thanks! – izik461

相關問題