問題タブ [testunit]

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 投票する
10 に答える
24302 参照

ruby - Ruby の Test::Unit::TestCase で、initialize メソッドをオーバーライドするにはどうすればよいですか?

私は Test::Unit に苦労しています。単体テストについて考えるとき、ファイルごとに 1 つの単純なテストを思い浮かべます。しかし、Ruby のフレームワークでは、代わりに次のように書かなければなりません。

ただし、test_* メソッドを呼び出すたびにセットアップとティアダウンが実行されます。これはまさに私が望んでいないことです。むしろ、クラス全体で一度だけ実行されるセットアップ メソッドが必要です。しかし、TestCase の初期化を壊さずに独自の initialize() を書くことはできないようです。

それは可能ですか?それとも、これを絶望的に複雑にしていますか?

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

ruby - RubyのTest::Unit :: TestCaseで、テストメソッドがテストされようとしているメソッドの総数にアクセスする方法はありますか?

つまり、テストスイートだけでなく他のスイートも含めるようにテストスイートを作成するときに、TestRunnerが実行したテストの数はグローバルにカウントされますか?

そのカウントにプロガンマ的にアクセスできる方法はありますか?

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

ruby - TestRunner を使用して実行する前にパラメータ/オブジェクトを ruby​​ ユニット/テストに渡す

プロセスを自動化し、それ自体の結果に対していくつかのテストを実行してから、他のことを行うツールを構築しています。

コードをクリーンアップしようとして、テストケースクラスだけを持つ別のファイルを作成しました。これらのテストを実行する前に、いくつかのパラメーター/オブジェクトをクラスに渡してから実行する必要があります。問題は、パラメーター/オブジェクトをテストクラスに渡す方法が見つからないように見えることです。

現在、Yaml ファイルを生成してテスト クラスで読み取ることを考えていますが、これに一時ファイルを使用するのは「間違っている」と感じています。誰かがより良い解決策を持っているなら、それは素晴らしいでしょう!

**************編集************

私が今行っていることのコード例:

上記の例では、TS_SampleTestSuite が重要な情報を必要とするため、最初の「テスト ケース」は、Yaml ファイル filname.yml から情報を読み取るだけのメソッドです。

混乱が解消されることを願っています。

0 投票する
7 に答える
1194 参照

ruby-on-rails - Test::Unit テストケースの起動が遅いのはなぜですか?

このようなテスト フィクスチャ (Rails モデル クラスをテストする) を実行すると、これらのテストの実行を開始するのに 20 ~ 30 秒かかります ("Loaded suite..." が表示されます)。何を与える?

これは、フィクスチャのない MySql DB を使用する Rails です。今回は、起動までに 30 秒以上かかりました。

0 投票する
3 に答える
4993 参照

ruby - Ruby単体テストの名前を出力する方法

単体テストがあります (例はTest::Unit documentationに変更されています)

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

このようなものを取得したいと思います(test_something出力されます):

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

ruby - ruby Test::Unit コマンドラインオプション?

Ruby の unit::test フレームワークでテストを実行するとき、コマンドラインから 1 つのテストだけを実行するように指定する (つまり、テスト クラスとテスト メンバー変数を指定する) 本当に簡単な方法はありますか? そうでない場合、この機能を持つ別のフレームワークはありますか?

0 投票する
6 に答える
772 参照

ruby - Ruby テストメソッドの上書き検出

次のようなテストクラスを書くと

最初の test_1 は無視されます。ばかげた間違いのように見えますが、コピー アンド ペースト プログラミングで発生する可能性があります。ランニング以外にも

それを、テストユニットが実行したと言うテストの数、rcov や heckle を使用する、または -w を使用して実行するテストと比較すると、どのようにしてそのような問題を検出できますか?

また、テストメソッドを上書きしないように指定する方法はありますか?

編集: テストされているメソッドには、6 つほどの可能な値を持つパラメーターがあり、テスターは各シナリオをテストしたいと考えていました。これが、コピー アンド ペースト プログラミングが使用された理由です。このようなシナリオで想定できる唯一の代替案は、パラメーターと期待値の 6 要素配列です。

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

ruby - Test::Unit はまだレールに関連していますか?

私は昔ながらの方法でRailsを学んでいます。Rails を使用したアジャイル Web 開発 (第 3 版) を出発点として読んでください。私は現在、テストを教える章にいます。RSPec などの他の BDD テスト フレームワークについても認識しています。だから私は、RSpec、Cucumber、Test::Unit を知る/使用する必要性を置き換える必要があるかどうか疑問に思っていましたか? それらは両方ともそれ自体に関連性があり、異なる目的に使用されていますか?

更新: 私はテストを始めたばかりなので、さまざまなフレームワークに慣れるのに役立つリソースについてフィードバックを得たいと思っています。

ありがとう!

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

ruby - Ruby の Test::Unit for Selenium を使用したデータ駆動型テスト

私はRubyとSeleniumの両方にかなり慣れていないので、テストハーネスを構築するための最良の方法を見つけようとしています. 私は Rake、Rake::TestTask、および Test::Unit を使用してこれを強化しています。ブラウザーと OS の組み合わせごとに 1 回実行したいスイートがあります。ただし、テストをパラメーター化する方法がわかりません。これは、Junit4 と TestNG で慣れてきたものです。

スイートまたはケースのセットアップで BROWSER= を読み取れるようにしたいと思っています。何か提案がありますか、それとも Ruby でこれを行うより良い方法はありますか?