Calabash-Android Как создавать петли или инаправлять что-то до выхода?

StackOverflow https://stackoverflow.com//questions/24008586

  •  20-12-2019
  •  | 
  •  

Вопрос

Введите описание изображения здесь Я пробую процесс выбора места для автобуса.У меня есть макет сидений с некоторыми местами, забронированными ans, некоторые не забронированы.Мне нужно выбрать неограниченное место.Мне нужно создать петлю, нажав случайных координат на экране, пока не смогу нажать на небугированном месте.Как это можно сделать с помощью 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
.

С наилучшими пожеланиями Лассе

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top