黄瓜高级步骤定义-语法错误,意外的tIDENTIFIER,期望的keyword_end [英] Cucumber high-level step definition - syntax error, unexpected tIDENTIFIER, expecting keyword_end

查看:162
本文介绍了黄瓜高级步骤定义-语法错误,意外的tIDENTIFIER,期望的keyword_end的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已遵循重复使用黄瓜步骤

在Ruby和Cucumber方面我是个菜鸟。

我正在使用calabash-android 0.9.0和黄瓜2.4.0

I'm a noob when it comes to Ruby and Cucumber.
I'm using calabash-android 0.9.0 and cucumber 2.4.0

我的calabash_steps.rb:

My calabash_steps.rb:

require 'calabash-android/calabash_steps'

Then /^I add the 1st bestsellers product to bag$/ do
    steps %Q {
         # App restarts and Onboarding screen shows again
         Given I see the text "next"
         Then I press the "next" button
    }
end

完整的堆栈跟踪:

❯ bundle exec calabash-android run app/build/outputs/apk/app-staging-debug.apk -t @bag
/Users/eric/AndroidStudioProjects/xxx/features/step_definitions/calabash_steps.rb:7: syntax error, unexpected tIDENTIFIER, expecting keyword_end
Then I press the "next" button
                              ^ (SyntaxError)
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/rb_support/rb_language.rb:96:in `load'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/rb_support/rb_language.rb:96:in `load_code_file'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/runtime/support_code.rb:142:in `load_file'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/runtime/support_code.rb:84:in `block in load_files!'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/runtime/support_code.rb:83:in `each'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/runtime/support_code.rb:83:in `load_files!'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/runtime.rb:253:in `load_step_definitions'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/runtime.rb:61:in `run!'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/lib/cucumber/cli/main.rb:32:in `execute!'
/Users/eric/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/cucumber-2.4.0/bin/cucumber:8:in `<top (required)>'
/Users/eric/.rbenv/versions/2.4.0/bin/cucumber:22:in `load'
/Users/eric/.rbenv/versions/2.4.0/bin/cucumber:22:in `<main>'


推荐答案

问题是 steps%Q {,将其更改为 steps%Q {使问题消失了

我有习惯滥用空格字符以提高Java和Javascript的可读性

The problem was the extra space in steps %Q {, changing it to steps %Q{ made the problem go away
I have the habit of abusing space characters for readability in Java and Javascript

需要'calabash-android / calabash_steps'

require 'calabash-android/calabash_steps'

Then /^I add the 1st bestsellers product to bag$/ do
    steps %Q{
         # App restarts and Onboarding screen shows again
         Given I see the text "next"
         Then I press the "next" button
    }
end

这篇关于黄瓜高级步骤定义-语法错误,意外的tIDENTIFIER,期望的keyword_end的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆