【问题标题】:Cannot access button in nib file (UI Testing iOS)无法访问 nib 文件中的按钮(UI 测试 iOS)
【发布时间】:2019-03-08 12:12:10
【问题描述】:

我正在为我的观点编写一个 UITest 案例。问题是我无法访问 nib 文件视图中的按钮。我也为按钮提供了可访问性标识符,但仍然无法访问它Here is the image

我只想点击那个拒绝按钮,但可访问性标识符对此不起作用。这是我的代码

app.buttons["CancelRequest"].tap()

CancelRequest 是可访问性标识符。我也尝试了下面的代码,因为按钮在容器视图中但没有运气

let ContainerView = app.otherElements["RejectContainerView"]
let RejectButton = ContainerView.buttons.element(boundBy: 0)  
RejectButton.tap()

我也尝试记录生成此代码的屏幕

app.buttons["dismiss"].tap()

奇怪的是录制屏幕正在为取消按钮生成相同的代码,并且您可以在我提供的图像中看到取消按钮

【问题讨论】:

  • "你试过用“拒绝”代替“取消请求”
  • 你的意思是说通过按钮名称访问它。我已经做了兄弟它没有工作测试用例失败
  • 可能是您在其笔尖加载到视图中之前访问按钮。
  • 在点击按钮之前,我会检查笔尖上的静态标签以确保它已加载
  • 好的,那么你可以说Xcode通过运行XCUITests并开始记录UItests来生成语句,Xcode会自动为UITests中的事件生成语句,以及访问元素。

标签: ios nib xcode-ui-testing ui-testing swift4.1


【解决方案1】:

它在禁用按钮的可访问性标识符并再次启用后工作。我认为这是一个错误,它是 XCTEST 案例的非常奇怪的行为

我试图用另一个 xib 复制相同的结果,是的,这是 XCTEST 案例中的一个问题,有时您无法访问 xib 按钮,您必须多次禁用和启用可访问性标识符,有时如果这不起作用,那么只需执行这个

sleep(2)
app.buttons["submit"].tap()

在点击按钮之前先进入睡眠,这是苹果推荐的方式,真的很奇怪

【讨论】:

    猜你喜欢
    • 2012-01-18
    • 1970-01-01
    • 2022-06-23
    • 1970-01-01
    • 2018-04-28
    • 1970-01-01
    • 2019-04-15
    • 1970-01-01
    • 2017-04-22
    相关资源
    最近更新 更多