红宝石轨道 – “耙子”运行我所有的黄瓜测试,但“黄瓜”没有步骤

我继承了Rails(3)应用程序,并试图掌握现有的黄瓜测试.我在应用程序的“features”文件夹中有以下设置(我错过了任何不相关的文件,例如额外的功能和步骤)
/features
  /people
    new-person.feature
  /step_definitions
    people_steps.rb
    web_steps.rb
  /support
    env.rb
    paths.rb
    selectors.rb

如果我运行’rake’,那么它会运行feature / people / new-person.feature中的所有功能,正确使用step_definitions中列出的步骤.

但是,我不想每次运行耙子,因为它需要太长时间,我只想在黄瓜中运行一个特定的测试,例如黄瓜特色/ people / new-person.feature -l 8

当我这样做,它运行的功能,但没有加载步骤.我回来了

Using the default profile...
Feature: Add a new person
  In order to allocate tasks to people
  As a community manager
  I want to add a new person

  Scenario: Secondary navigation should contain "Add new person" # features/people/new-person.feature:8
    Given I am on the new person page                            # features/people/new-person.feature:9
      Undefined step: "I am on the new person page" (Cucumber::Undefined)
      features/people/new-person.feature:9:in `Given I am on the new person page'
    Then I should not see "Add new person"                       # features/people/new-person.feature:10
      Undefined step: "I should not see "Add new person"" (Cucumber::Undefined)
      features/people/new-person.feature:10:in `Then I should not see "Add new person"'

1 scenario (1 undefined)
2 steps (2 undefined)
0m0.005s

You can implement step definitions for undefined steps with these snippets:

Given /^I am on the new person page$/ do
  pending # express the regexp above with the code you wish you had
end

Then /^I should not see "([^"]*)"$/ do |arg1|
  pending # express the regexp above with the code you wish you had
end

If you want snippets in a different programming language,just make sure a file
with the appropriate file extension exists where cucumber looks for step definitions.

黄瓜为什么不加载步骤?我猜想我需要在某个地方采取步骤,但是我无法解决问题.

谢谢,最大

解决方法

马克斯·威廉姆斯找到了他的问题的答案:

编辑 – 找到答案,这里:https://rspec.lighthouseapp.com/projects/16211/tickets/401-envrb-not-loaded-when-running-individual-features-in-sub-directories

在config / cucumber.yml中有一行如下所示:

std_opts =“–format#{ENV [‘CUCUMBER_FORMAT’] ||’pretty’} –strict –tags〜@ wip”

把它改成

std_opts =“–format#{ENV [‘CUCUMBER_FORMAT’] ||’pretty’} –strict –tags〜@ wip –require features /”

这就像添加 – 要求功能/到黄瓜测试运行结束,并使其正常加载所有.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...