1

次のようなキュウリ テストでアサーションを使用したいと思います。

すると /^そのアイテムのページに移動します$/ do

assert_equal page.find(:xpath, "//h2").text.to_s, $title, "The title you clicked does not match the title on the item page"

終わり

test-unit gem をインストールしましたが、テストを実行すると、次のエラーが発生します。

undefined method assert_equal' for #<Object:0x81a> (NoMethodError) ./features/support/web_steps.rb:49:in/^そのアイテムのページに移動します$/' features/userjourney.feature:15:in `その後、そのアイテムのページに移動します'

しばらくグーグルで調べたところ、おそらく test-unit-full gem をインストールする必要があるようです。ただし、これを(jRubyを使用して)試したところ、次のエラーが発生しました。

エラー: test-unit-full のインストール中にエラーが発生しました: エラー: gem ネイティブ拡張機能をビルドできませんでした。警告: JRuby は、ネイティブ拡張または「mkmf」ライブラリをサポートしていません。代替手段については、 http://kenai.com/projects/jruby/pages/Homeを確認してください。

アサーションを使用するには、test-unit-full gem が本当に必要ですか? 第二に、もしそうなら、どうすればjRubyにgemをインストールできますか?

ありがとう、レベッカ

4

1 に答える 1

1

assert_equal を使用するために test-unit-full は必要ありません。ばかげた質問で申し訳ありませんが、ありますか

require 'rubygems'
gem 'test-unit'
require 'test/unit'

あなたのスクリプトの一番上に?少し前に似たようなことに遭遇しましたが、gemコールがなければ、最新バージョン (2.3.0) ではなく、ruby1.8 にバンドルされている古いバージョンの test-unit を使用していたことがわかりました。

于 2011-07-22T19:53:22.500 に答える