問題タブ [minitest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1051 参照

ruby - minitest で除算をテストする

私はこのコードを作成し、ミニテストでテストしようとしましたが、例外に対して正しい構文を使用していないようです:/

出力:

実行オプション: --seed 30510

テストの実行:

..E

0.001000 秒でテストを完了、3000.0000 テスト/秒、2000.0000 アサーション/秒。

1) エラー: test_0002_can_t_divide_by_zero_and_raise_bla(私のテスト): RuntimeError: bla essai.rb:9:in my_method' essai.rb:19:intest_0002_can_t_divide_by_zero_and_raise_bla'

3 回のテスト、2 回のアサーション、0 回の失敗、1 回のエラー、0 回のスキップ

2 番目のテストでエラーが発生しました。誰か助けてもらえますか?

0 投票する
5 に答える
4636 参照

ruby - Minitest にテストを順番に実行させるにはどうすれば効果的ですか?

知っている。これはお勧めできません。ここでは説明しませんが、テストは記述されている順序で実行する必要があります。ドキュメントによると、私のテスト クラス (TestClass と呼びます) が Minitest::Unit::TestCase を拡張する場合、パブリック メソッドを呼び出すことができるはずですi_suck_and_my_tests_are_order_dependent!(ミニテストを作成した人に意見があったと思いますか?その上で?)。さらに、呼び出されたメソッドを呼び出し、のデフォルトの動作をオーバーライドするようtest_orderに指定するオプションもあります。これらのどちらも私のために働いていません。:alpha:random

次に例を示します。

これを実行すると、次のようになります。

i_suckメソッド呼び出しを上部のメソッドに置き換えると、次のようになります。

私のテストは実行されますが、putsfor each メソッドから、テストを実行するたびにまだランダムな順序で実行されていることがわかります。

私が間違っていることを誰かが知っていますか?ありがとう。

0 投票する
1 に答える
201 参照

ruby-on-rails - Rails 3.1 と minitest:「他の」クラスをテストするには?

controllershelpersおよびはmodels、フォルダー内の非常に適切に定義されたtestフォルダーです。

しかし、 のクラスはlibどうでしょうか?

このテストをどこに置くべきですか? フォルダーのエポックで、test/unitこのフォルダーを使用するのが好きでしたが、今ではフォルダーが呼び出されtest/models、適切な場所のようには見えません。

フォルダーを作成しましたtest/libsが、フォルダーrake testから読み取れません:/

また、公式MiniTest::Rails::Specのテスト フォルダーから作成されたテストは共通クラスから継承されないため、戦略とこの共通事項を実装するための共通の開始点と終了点が失われています。DatabaseCleaner

0 投票する
1 に答える
212 参照

ruby - MiniTestおよび非ラテン語テストの説明

Ruby 1.9はクールなUnicodeサポートを持っていますね?

ラテン文字以外の文字はどこにありますか?私はいつも私のテストを私の恐ろしい英語で書くべきですか?

任意のUnicodeシンボルでメソッドを定義できるため:

PS私の質問は明確ではないようです。ラテン語以外の定義を表示するために、ミニテストの失敗の説明を作成する方法を尋ねたいと思います。

0 投票する
1 に答える
1286 参照

ruby-on-rails - Minitest と Rails 3.0.10 を使用してフィクスチャをロードする方法は?

minitest-rails gem (JRuby 1.6.5 == Ruby 1.9.2 で実行) を使用する Rails 3.0.10 プロジェクトがあります。Minitest の使用を開始するために、最小限の変更で既存の Test::Unit テスト ケースをすべて使用したいと考えています。現在、テストを実行できますが、フィクスチャがロードされていないため、多くは失敗します。私はまだそれを機能させる方法を理解していません。ActionController::TestCase を MiniTest::Unit::TestCase に変更すると、フィクスチャ機能が動作しません。ここのリンクとその中のリンクを試しましたが、成功しませんでした。したがって、問題は、MiniTest gem で ActionController::TestCase を引き続き使用する方法、または MiniTest::Unit::TestCase に切り替えてフィクスチャをロードする方法です。

0 投票する
1 に答える
103 参照

ruby - 行ごとの比較のためのRubyテスト

拡張文字列比較を行うミニテスト用のテスターはありますか?比較する大きな文字列があります。「それらは等しくありません」というエラーメッセージがあり、それぞれ20行を比較する必要がある場合、あまり効果的ではありません。

0 投票する
2 に答える
3398 参照

ruby - Rubyでクラスをモックするにはどうすればよいですか?

minitest/mock を使用していて、クラスをモックしたいと考えています。モデル クラス自体をテストしようとしているのではなく、サービス (SomeService) がモデル (SomeModel) と対話することをテストしようとしています。

私はこれ(Hack::ClassDelegate)を思いつきましたが、それが良い考えだとは確信していません:

とにかく、クラスをモックすることは良い考えではないと確信していますが、いくつかのテストを作成する必要があるレガシーシステムがあり、いくつかのテストをラップするまでシステムを変更したくありません。

0 投票する
1 に答える
3371 参照

ruby-on-rails - ユニット スタイルを使用して統合テスト用に minitest を構成する方法

Minitest を使用するように Rails を構成するためのリソースを見つけました。残念ながら、ほとんどのリソースは、すべてのテスト タイプ、または最良の場合でも少なくとも統合テストに Minitest Spec を使用することを前提としています。

私は「ヴィンテージ」かもしれませんが、アサーション ala test:unit は rspec スタイルよりもうまく機能すると感じています。MiniTest::Unit 宣言スタイルを Capybara と共に使用して、統合テストを実行します。

Minitest_helper.rb と some_model_integration_test.rb の例を見て、統合テストを Capybara とうまく連携させるために配置する必要がある関連構成要素を理解することに興味があります。

Rails を設定する方法を誰か説明してもらえますか?

0 投票する
5 に答える
3416 参照

ruby - 失敗時にミニテストの実行を停止する方法は?

機能テストのランナーとして Minitest を使用し、ブラウザーを実行するためのドライバーとして Selenium を使用しています。各テストは、MiniTest::Unit::TestCase としてモデル化されています。

Minitest は、すべてのテストの実行が完了すると、実行の概要を報告します。発生した例外も、実行の最後に出力されます。実行のコンテキストが失われ、予期しないエラーが発生した場合のデバッグは困難です。私が遭遇している例外は決定論的ではありません。

Minitest ランナーが例外またはアサーションの失敗時にテストの実行を停止するようにする方法はありますか?

minitest (2.11.2) と ruby​​ 1.9.2p290 (2011-07-09) [i386-mingw32] を使用しています。

0 投票する
2 に答える
1918 参照

ruby-on-rails - Minitest 統合テスト: セッションが切断されない?

最近、非常に単純な Rails アプリを rspec から minitest に切り替えました。カピバラとfactory_girlも使っています。

私は 3 つの個別の統合テスト ファイルを持っています。これらはすべて、次の行に沿って何かを使用してユーザーをログインさせることを含みます。

minitest に切り替えた後、各テストの後にセッションが切断されなくなったようです。たとえば、「users_integration_test.rb」という名前のテスト ファイルで上記のコードを使用してログインをテストし、「sessions_integration_test.rb」などの別のテスト ファイルの実行を開始すると、ユーザーは既にログインしてから、再度ログインできます。上記のコード。

私の質問は: これは rspec と minitest の意図的な違いですか? 各テストの後にユーザーをログアウトする必要があるだけですか? それとも、minitest の設定を間違えたのでしょうか?

Minitest Railscast と同じ minitest_helper ファイルを使用しています。