Forum Discussion

dmaisells's avatar
dmaisells
Occasional Contributor
5 years ago

feature is coming up nil in query.rb

I recently updated a bunch of gems including Chromedriver, cucumber, capybara, selenium-webdriver.  Everything was working fine before.   Now I get the following error.  The token (feature is undefined)....

 

undefined method `tags' for nil:NilClass (NoMethodError)
../.rvm/gems/ruby-2.3.0/gems/cucumber-gherkin-13.0.0/lib/gherkin/query.rb:19:in `update_feature'

 

def update_feature(feature)
store_nodes_location(feature.tags)

feature.children.each do |child|
update_rule(child.rule) if child.rule
update_background(child.background) if child.background
update_scenario(child.scenario) if child.scenario
end
end

  • dmaisells's avatar
    dmaisells
    Occasional Contributor

    More information.  

    I used to be able to at my root directory where I had a features/app_name   directory I used to be able to run a script with

    # cucumber OS=xxx ENV=yyy  -t@some_tag

    now I must use

    # cucumber OS=xxx ENV=yyy features/app_name/smoke/thefeature.feature -t@some_tag   

    Is there something I need to set in my environment so that the first command works that it will search from the root folder for all feature files matching the tag?

    • dmaisells's avatar
      dmaisells
      Occasional Contributor

      I see that this latest version of Cucumber now requires you to specify the path to the file where any tags you specify are to search.  It didn't used to work that way.  You could just specify -t@tag_name and it would search all feature files from your root folder for that tag.   Am I missing some environment setting that was overwritten when I updated selenium-webdriver, cucumber, and capybara to name a few gems?

      • dmaisells's avatar
        dmaisells
        Occasional Contributor

        Aslak,

        If this is a bug, I can't believe no one has reported yet.

        Could you please provide the procedure for submitting a ticket.  I use JIRA at work to log tickets and although we use github too, I unfamiliar with creating a ticket there.  Please provide procedure.