【发布时间】:2020-05-04 17:43:46
【问题描述】:
我有一个包含多个部分的表格。每个部分都有一个自定义页脚视图,里面有一个按钮。 从 UITests 中,我无法让自动化过程按下按钮。
我尝试过手动编写 tap() 操作,也尝试过在 Xcode 中记录测试,但没有任何运气。
我一直在尝试的:
isAccessibilityElement = true/false
accessibilityIdentifier = ...
accessibilityLabel = ...
到自定义页脚视图,也到 UIButton。
这是 Xcode 在按下按钮时记录测试时打印的内容:
app.otherElements["ACTIVITY_VIEW"].tables["ACTIVITY_TABLE_VIEW"].children(matching: .other)["FOOTER_VIEW"].children(matching: .other)["FOOTER_VIEW"].tap()
此外,在打印 XCUIApplication().debugDescription 的结果时,我只看到以下部分:
Other, 0x600002251880, {{0.0, 272.0}, {414.0, 68.0}}, identifier: 'FOOTER_VIEW'
Other, 0x60000224bc60, {{0.0, 0.0}, {0.0, 0.0}}
即使我为它设置了accessibilityIdentifier,我也看不到该按钮。
【问题讨论】:
-
删除页脚的辅助功能并添加按钮
-
@canister_exister 已经尝试过了!两者同时,一次一个......没有运气。
-
您是在模拟器还是设备上运行测试?只是为了确保您可以在两种或一种情况下通过 accesibilityIdentifier 找到您的元素。
-
理想情况下,您应该将
accessibilityIdentifier设置为您感兴趣的UIButton,并将isAccessibilityElement = false设置为您的页脚视图。 -
嘿,谢谢@denis_lor!请看我提供的答案。
标签: ios swift xcode tableview uitest