如何在 SwiftUI 中正确设置可访问性标识符?
How to set an accessibility identifier properly in SwiftUI?
我希望能够点击我的视图堆栈上的具体按钮。为此,我首先在我的代码中设置了一个可访问性 ID:
Button(action: {
withAnimation(.easeOut(duration: 1)) {
self.modalShown.toggle()
}
}) {
FilterButton()
.accessibility(identifier: "modalFilterViewBtn")
}
.buttonStyle(PlainButtonStyle())
}
所以,然后在我的文本案例中,我试图寻找那个 id:
IOSElement elem1 = driver.findElementByAccessibilityId("modalFilterViewBtn");
wait.until(ExpectedConditions.elementToBeClickable(elem1));
elem1.click();
结果是:使用给定的搜索参数无法在页面上找到元素。(..)
最后,如果我使用 Appium 检查器了解我想要的元素的可访问性 ID,它似乎是另一个名称,与我在代码中设置的不同:
即使我查找具有该 id("Filter") 的元素,在我的测试用例中也找不到它。
那么,使用 SwiftUI 设置此辅助功能 ID 的正确方法是什么?
谢谢
我想应该是这样的
Button(action: {
// action here
}) {
// button label view here
}
.buttonStyle(PlainButtonStyle())
.accessibility(identifier: "modalFilterViewBtn")
我希望能够点击我的视图堆栈上的具体按钮。为此,我首先在我的代码中设置了一个可访问性 ID:
Button(action: {
withAnimation(.easeOut(duration: 1)) {
self.modalShown.toggle()
}
}) {
FilterButton()
.accessibility(identifier: "modalFilterViewBtn")
}
.buttonStyle(PlainButtonStyle())
}
所以,然后在我的文本案例中,我试图寻找那个 id:
IOSElement elem1 = driver.findElementByAccessibilityId("modalFilterViewBtn");
wait.until(ExpectedConditions.elementToBeClickable(elem1));
elem1.click();
结果是:使用给定的搜索参数无法在页面上找到元素。(..)
最后,如果我使用 Appium 检查器了解我想要的元素的可访问性 ID,它似乎是另一个名称,与我在代码中设置的不同:
即使我查找具有该 id("Filter") 的元素,在我的测试用例中也找不到它。
那么,使用 SwiftUI 设置此辅助功能 ID 的正确方法是什么?
谢谢
我想应该是这样的
Button(action: {
// action here
}) {
// button label view here
}
.buttonStyle(PlainButtonStyle())
.accessibility(identifier: "modalFilterViewBtn")