Ruby 没有得到这样的文件或目录-euler(Aruba::LaunchError)

Ruby 没有得到这样的文件或目录-euler(Aruba::LaunchError),ruby,rubygems,cucumber,Ruby,Rubygems,Cucumber,我尝试使用Aruba测试一个使用命令行界面的gem,如下所示: 我得到了这个错误: Scenario: # features/prob1.feature:6 Given I run `euler prob1 10 3 5` # aruba-0.5.3/lib/aruba/cucumber.rb:60 No such file or directory - euler (Aruba::LaunchError) features/

我尝试使用Aruba测试一个使用命令行界面的gem,如下所示:

我得到了这个错误:

Scenario:                             # features/prob1.feature:6
Given I run `euler prob1 10 3 5`    # aruba-0.5.3/lib/aruba/cucumber.rb:60
  No such file or directory - euler (Aruba::LaunchError)
  features/prob1.feature:7:in `Given I run `euler prob1 10 3 5`'
Then the output should contain "23" # aruba-0.5.3/lib/aruba/cucumber.rb:97
我也在用雷神

这是我的文件/lib/euler/cli.rb:

require 'thor'
require 'euler'

module Euler
  class CLI < Thor
  desc "prob1 ITEM1 ITEM2 ITEM3", "finds the sum of numbers under ITEM1 that are multiples of ITEM2 or ITEM3"
    def prob1(upper_limit, num1, num2)
      puts Euler::Prob1.new(upper_limit, num1, num2).sum
    end
  end
end
我在env.rb的Before块中修改了aruba工作目录 没有成功

我的“Foodie”Cumber测试运行得很好,但是这个gem和我一直在开发的其他gem显示了相同的Aruba::Launchorr。据我所知,Foodie和Euler的设置似乎是相同的

我还能做些什么来解决这个问题

谢谢

已编辑:以下是要素定义:

Feature: Prob1
  In order to solve the Euler Project Problem 1
  As a CLI
  I want 3 numbers- upper limit, and the 2 divisors

Scenario:
  When I run `euler prob1 10 3 5`
  Then the output should contain "23"

我遵循了同样的指南。您应该检查您是否已创建了
bin/euler
,并具有运行权限。请注意,脚本
euler

应该没有文件扩展名。请向我们展示步骤定义,以及为什么使用根目录下的
/lib/euler/cli.rb
lib路径?您有基于根文件夹的库吗?我选择将此作为gem编写,只是为了进一步了解我的知识,因此路径为/lib/euler/cli.rb。完整路径是euler/lib/euler/cli.rb。如果使用bunlder、Gemfile和.gempec,则必须使用以下内容运行cucumber:
bundle exec cucucumber
这允许加载您自己的库或正在开发的其他库。确保正确配置了Gemfile和.gempec。
Feature: Prob1
  In order to solve the Euler Project Problem 1
  As a CLI
  I want 3 numbers- upper limit, and the 2 divisors

Scenario:
  When I run `euler prob1 10 3 5`
  Then the output should contain "23"