我一直试着在XCode 7.3上进行新的UI测试,我发现它对我来说似乎是一个错误。
问题是通过“ addSubview ”方法添加的视图似乎对UI测试系统完全不可见。
我有这个观点:
这个UIview创建代码:
let container = UIView(frame: CGRectMake(0, 0, 375, 200))
container.backgroundColor = UIColor.orangeColor()
container.isAccessibilityElement = false
let label = UILabel(frame: CGRectMake(0, 100, 375, 20))
label.backgroundColor = UIColor.yellowColor()
label.textAlignment = NSTextAlignment.Center
label.accessibilityIdentifier = "labelIdentifier"
label.text = "I am a label"
container.addSubview(label)
这个简单的UI测试:
func testExample() {
let final = XCUIApplication().staticTexts.containingType(.StaticText, identifier: "labelIdentifier").element
XCTAssertEqual(final.label, "I am a label")
}
问题是,根据我附加橙色视图的方式,测试找不到标签。如果我这样做:
self.tableView.tableHeaderView = container
测试通过完全没有任何问题,但附加:
self.tableView.addSubview(container)
提示下一个错误:
在论坛中挖了一点后,我已经测试了所有推荐的设置,例如设置为false容器“ isAccessibilityElement ”属性等等,但似乎没有任何效果。
长话短说。 ¿任何人都试图通过添加“ addSubview ”方法将元素附加到其他UIView上?