calabash是否有一些预定义的功能来测试UI元素的位置?例如:
Given I am on some screen
Then I see element1 LEFT OF element2
答案 0 :(得分:1)
我想到的唯一解决方案是函数find_coordinate(uiquery)
(它包含在Calabash中)。此函数返回元素坐标数组(第一个是x
轴上的位置,第二个是y
)。
用法示例:
And /^I see '(.*?)' on the left of '(.*?)'$/ do |name1, name2|
element1_x = find_coordinate("* marked:'#{name1}'")[0]
element2_x = find_coordinate("* marked:'#{name2}'")[0]
unless element1_x < element2_x
raise "Element '#{name1}' is not on the left of element '#{name2}'!"
end
end