calabash-Android - 同一个 radioButton 的多个实例 - 如何断言?

calabash-Android - multiple instances of same radioButton - how to assert?

我正在测试 android 表单 (xamarin)。
我的脚本寻找带有标签 ="Registered" 的单选按钮 它找到并对此执行操作 但是,还有另一个标记为 "Registered" 的 radioButton 实例,它位于第一个实例下方的几行。黄瓜脚本总是只找到第一个,因此脚本失败。

我需要对两个按钮执行操作,而不仅仅是第一个实例。

当我执行查询 ("RadioButton") 时,它 returns 只是一个单选按钮,因为在表单上,​​C# 代码只是实例化一个单选按钮的另一个实例。如果需要,我们不希望更改代码,所以我想知道 Cucumber/Calabash 中是否有忽略第一个实例并在第二个实例上执行和操作的方法?谢谢。

如果您想要的元素在另一个元素中,您可以使用查询语法将定位器链接在一起。例如

query(ListView index: 1 * RadioButton)

使用这个你可以找到你想要的那个。

就是说,如果屏幕上当前有两个元素,query("RadioButton") 应该 return 两个元素。查询方法的工作方式不应该关心它是否是 C# 代码中的相同元素。如果该元素不在屏幕上,则查询不会 return 它,因此您可能需要滚动 down/across 等