我正在尝试一辆总线的座位选择过程。我有一个座位布局,有些座位预订了一些没有预订的人。我需要选择一个未预订的座位。我需要通过在屏幕上攻击随机坐标来创建一个循环,直到我能够点击未经预订的座位。如何使用calabash完成。

有帮助吗?

解决方案

这个帖子有点旧。但无论如何都在这里沿着你在寻找的东西。

要在屏幕上触摸一组坐标,请参阅选择座位,然后读取票价值。

所以你需要一个循环。你可以用这样的东西。 来自你的照片,我可以看到你那里只有8个座位。但要使它快速让我们试着尝试击中可能有座位的区域并说我们正在看3x4座位。

a = 0
b = 0
while a < 3
  while b < 4 
     b += 1
  end
  a += 1
end
.

外循环将运行3次,从前到返回。内循环将运行4次,左右座位。

现在我们需要确保点击每个位置,所以我们添加

performAction('click_on_screen',<x-value>, <y-value>)
.

并结合我们有这样的东西。 在那里你有x和y是起始位置,应该匹配第一座位的坐标。 然后,首先运行,您只需点击该位置,并执行任何您需要获得票价的费用。 首先单击后,可以通过两个座位之间的距离增加xoffset值,然后您已准备好单击第二个。请记住,我制造了这个更简单,所以它实际上第二次新闻将触摸岛上。但在第3和第4次,你应该再次击中座位。 然后你这样做是为了之后的两个下一行。

a = 0
b = 0
x = 100
y = 500
xOffset = x;
while a < 3
  while b < 4  
     performAction('click_on_screen', xOffset, y)
     b += 1
     xOffset += 200 
  end
  xOffset = x
  y += 200
  a += 1
end
.

最好的问候 lasse

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top