Automation 为什么XTest代码无法在iOS13.3(在13.2中使用)中的WKWebView中按值查找textField

Automation 为什么XTest代码无法在iOS13.3(在13.2中使用)中的WKWebView中按值查找textField,automation,accessibility,textfield,wkwebview,xctest,Automation,Accessibility,Textfield,Wkwebview,Xctest,Xcode 11.3附带的iOS 13.3模拟器中的XTest自动化/可访问性行为发生了一些变化。我的UI测试代码突然在WKWebView中找不到文本字段 我有一个UI测试,它已经运行了很长时间,包括在iOS 13.2模拟人生中。测试将查找具有特定值的文本字段。下面是一些测试HTML,使用loadFileURL加载到WKWebView中: <body> <div> <input type="text" placeholder="User na

Xcode 11.3附带的iOS 13.3模拟器中的XTest自动化/可访问性行为发生了一些变化。我的UI测试代码突然在WKWebView中找不到文本字段

我有一个UI测试,它已经运行了很长时间,包括在iOS 13.2模拟人生中。测试将查找具有特定值的文本字段。下面是一些测试HTML,使用
loadFileURL
加载到WKWebView中:

<body>
    <div>
        <input type="text" placeholder="User name">
    </div>
<body>
如果我在HTML中的
前面的
中添加一个字符,那么测试就可以工作了

如果我在iOS 13.2 sim卡上运行相同的代码,即使使用Xcode 11.3,也可以正常工作。它只在iOS 13.3 sim卡上出现故障


有人能解释一下发生了什么吗?

你有没有找到一种不修改HTML的方法来解决这个问题?没有。我已经提出了一个苹果反馈助手问题(FB7492689),但还没有发表评论。我怀疑这个问题也会导致在设备上读取HTML时出现画外音问题,但我还没有对此进行测试。苹果可能比开发者代码级报告对用户级可访问性缺陷报告更敏感。仅供参考-
  func testExample() {
    // UI tests must launch the application that they test.
    let app = XCUIApplication()
    app.launch()

    // Enter text in the username field

    let userNameField = app.webViews.textFields["User name"]
    if userNameField.waitForExistence(timeout: 10) {
        userNameField.tap()
        userNameField.typeText("Harry Potter")
    }

    XCTAssert(userNameField.exists)
}