@manitu__pc
QA mobile

Как работать с объектами в calabash-cucumber?

Здравствуйте, сообщество!

В процессе изучения calabash-cucumber для тестирования мобильных приложений возник вопрос как работать с объектами. Для тестирования взял приложение iOS, и вот на одном из Активити есть 4 вопроса и 3 ответа на каждый вопрос. Для прохождения на следующее Активити нужно ответь на эти вопросы, а ответ это отметка варианта напротив вопроса. Рисунок примерно такой получается:

|1|0|0| или |1|0|0|
|0|1|0| или |1|0|0|
|0|0|1| или |1|0|0|
|1|0|0| или |0|0|1|


1 - выбранный вариант (чек-бокс); 0 - соответсвенно не выбранное поле. Привязки к кнопке нет - ни ID, ни текста. Приходится находить ее по координатам. И вот вопрос: как задать объект(кнопка) с заданными координатами, а потом передавать ему метод (например object.touch(x, y)) в теле шага. Возник интерес проверить все комбинации, а их 81(в шагах это очень много) - с объектами было бы легче(можно счетчик для перебора написать). Вот мои попытки, но они не работают:

class Tapper
    def tap(x, y)
        perform_action('click_on_screen', x, y)
        #or touch(nil, {:offset => {:x => x.to_i, :y => y.to_i}})
    end
end


Then /^I touch on screen $/ do |x, y|
  @answer_1_1 = Tapper.new
  @answer_1_1.tap(802, 153)
end


Результат или:
undefined step


либо
undefined method 'perform_action' for Object
  • Вопрос задан
  • 164 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы