3

Aruba で gem をテストしています。私の問題は、bin ディレクトリに何もない場合でも、「実行可能ファイル」を実行するときのステップが通過することです。これがシナリオです。

  Scenario: Send SMS
  When I run `serialsms`
  Then message should be sent

機能/サポート/env.rb

$LOAD_PATH.push File.join(File.dirname(__FILE__), "/../../lib" )
ENV['PATH'] = "#{File.expand_path(File.dirname(__FILE__) + '/../../bin')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
require 'serial_sms'
require 'aruba/cucumber'

キュウリの出力

  Scenario: Send SMS            # features/send_sms_cli.feature:7
    When I run `serialsms`      # aruba-0.4.9/lib/aruba/cucumber.rb:56
    Then message should be sent # features/send_sms_cli.feature:9

1 scenario (1 undefined)
2 steps (1 undefined, 1 passed)
0m0.123s

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

Then /^message should be sent$/ do
  pending # express the regexp above with the code you wish you had
end

これは Aruba の正常な動作ですか、それとも何か間違ったことをしていますか?

4

1 に答える 1

3

機能定義の前にフックを追加すると、@announcearuba が行っていることに関する拡張情報を得ることができます。

特に、aruba は、それ自体の tmp ディレクトリを作成したり、ソースをコピーしたりするなど、多くのファンキーなことを行います。しかし、それはあなたの問題ではないかもしれません。

IIRC のステップ定義

When I run "foo"

失敗するものではなく、アサートまたはマッチャーがありません。次のようなものでそれに従う必要があります

Then it should pass ....

失敗したテストを取得する (終了コードのチェック、STD(OUT|ERR) への送信など)

于 2012-01-13T10:22:52.263 に答える