用calabash android触摸每个自定义ListView项目



因此,我尝试触摸自定义ListView项以查看下一个View,然后我想向后移动,但现在我无法查询任何列表项。

我的小黄瓜代码是:

Then I choose category:
        | Artystyczne |
        | Językowe  |
        | Komputery i robotyka  |
        | Korepetycje |
        | Medyczne  |
        | Praktyczno-techniczne |
        | Rozrywkowe  |
        | Rozwijające |
        | Sportowe  |
        | Taneczne  |
        | Pozostałe |

在我的步骤中看起来像:

Then(/^I choose category:$/) do |table|
  # table is a Cucumber::Ast::Table
  data = table.raw
  data.each do |i|
    #tap_mark i
    #tap_when_element_exists("* {text CONTAINS[c] '#{i}'}")
    touch(i)
    #TODO move back one View
  end
end

当我运行测试时,错误显示:

Then I choose category:                       # features/step_definitions/calabash_steps.rb:25
      | Artystyczne           |
      | JÄtzykowe              |
      | Komputery i robotyka  |
      | Korepetycje           |
      | Medyczne              |
      | Praktyczno-techniczne |
      | Rozrywkowe            |
      | RozwijajÄce           |
      | Sportowe              |
      | Taneczne              |
      | PozostaĹ'e             |
      Failed to perform gesture. java.util.ArrayList cannot be cast to java.lang.String (RuntimeError)
      ./features/step_definitions/calabash_steps.rb:31:in `block (2 levels) in <top (required)>'
      ./features/step_definitions/calabash_steps.rb:28:in `each'
      ./features/step_definitions/calabash_steps.rb:28:in `/^I choose category:$/'
      featuresmy_first.feature:11:in `Then I choose category:'

我试着在calabash-android console中做一些调试,有趣的是tap_mark "Artystyczne"工作得很好。所以我认为我的Data Tables有问题,但我不知道(或谷歌(是什么。如果有任何帮助,我将不胜感激:(

祝你今天愉快:(

步骤定义

特点

Then(/^I choose category:$/) do |table|   
 data = table.raw
            data.each do |identifiers|
                identifiers.each do |identifier|
                    tap_when_element_exists("* {text CONTAINS[c] '#{identifier}'}")
                    sleep(1)
                end
            end

这里有一个assoc数组,每个循环需要2个;(

您表示已尝试

tap_mark "Artystyczne"

然而你发布的你的步骤是

Then(/^I choose category:$/) do |table|
  # table is a Cucumber::Ast::Table
  data = table.raw
  data.each do |i|
    touch(i)
  end
end

您正在使用触摸,而不能使用简单的文本来识别要触摸的项目。它需要一个查询。

风格的东西

touch "ListView marked:'#{i}'"

相关内容

  • 没有找到相关文章

最新更新