iOS UI 测试:获取图像文件名 (Swift)

Jos*_*osa 1 xcode uiimage ios swift xcode-ui-testing

我的问题是有关获取的图像的文件名UIImage是在使用UIImageView

这是我的示例代码:

// Using image from UIImageObject
imageView1.image = myUIImage
// Using image from XAssets
imageView2.image = UIImage(named: "myImageName")
Run Code Online (Sandbox Code Playgroud)

在 UI 测试中,如何获取图像文件的名称?预期的结果是:

"myUImageObject" // For imageView1 
"myImageName" // For imageView2
Run Code Online (Sandbox Code Playgroud)

有没有办法获得这个值?

谢谢大家!

Thi*_*oAM 7

不幸的是,您不能这样做,但是有一个简单的解决方法,请尝试以下操作:

let myImageView = UIImageView()
myImageView.image = UIImage(named: "anyImage")
myImageView.restorationIdentifier = "anyImage" // Same name as image's name!

// Later, in UI Tests:
print(myImageView.restorationIdentifier!) // Prints "anyImage"
Run Code Online (Sandbox Code Playgroud)

基本上在这个解决方案中,您使用恢复标识符来保存图像的名称,以便您以后可以在任何地方使用它。如果更新映像,则还必须更新恢复标识符,如下所示:

myImageView.restorationIdentifier = "newImageName"
Run Code Online (Sandbox Code Playgroud)

希望能帮到你,祝你好运!