Hua*_*ham 2 tableview uislider ios swift xcode-ui-testing
在UI测试上的Xcode 9.0(9A235),与之交互UISlider与adjust(toNormalizedSliderPosition:)时不工作在所有UISlider嵌套在UITableViewCell。
我已经在许多不同的场景中进行了测试: - Normal UISliders 没有嵌入到UITableView使用该adjust方法的工作中。-UISlider与 a 共存UITableView但不在 Table View Cell 内继续使用adjust
-UISlider在 aUITableView中可以唯一标识。-UISlider在 a 中识别UITableView可以响应简单的事件,例如tap()
-UISlider在 aUITableView中识别根本不适用于adjust方法,即使我将行数修改为 1。错误消息是:
获取元素 pid 的属性失败:24415,elementOrHash.elementID:106102876671744.43:错误域=XCTDaemonErrorDomain 代码=13“获取属性 5011 的值返回 AX 错误 -25205。” UserInfo={NSLocalizedDescription=获取属性 5011 的值返回 AX 错误 -25205。}
我在网上找到的相关讨论:https : //forums.developer.apple.com/thread/77445
我已经就此向 Apple提交了错误报告。我要问的是,有没有人知道UISlider当滑块嵌套在UITableViewCell. 谢谢!
您可以将其用作解决方法:
func testSliderAdjustsInTableView() {
let app = XCUIApplication()
app.staticTexts["Slider in Table View UI Test"].tap()
let cell = app.tables.element.cells["cell 0"]
let button = cell.buttons["Test Button"]
button.tap()
let slider = cell.sliders["value slider"]
XCTAssert(slider.exists)
let fiftyPercent = slider.coordinate(withNormalizedOffset: CGVector(dx: 0.5, dy: 0.5))
let ninetyPercent = slider.coordinate(withNormalizedOffset: CGVector(dx: 0.9, dy: 0.5))
fiftyPercent.press(forDuration: 0.1, thenDragTo: ninetyPercent)
XCTAssertEqual(slider.value as! String, "90 %")
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
704 次 |
| 最近记录: |