問題タブ [junit]

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

java - JUnit:テストメソッドの失敗が@Afterメソッドの失敗の前に表示されることを確認します

私は、モックを簡単にするように設計された小さなテストケースクラスを設計しました(この場合、JUnit 4とEasyMockを使用)。これの一部は、テストが終了した後にモックを検証することです。そのため、モックは@Afterで注釈が付けられたメソッドで検証されます。

ただし、テストメソッド自体に失敗があり、テストが完了せず、模擬検証が失敗した場合、JUnitによって報告される失敗は検証の失敗です。ただし、報告された失敗がテスト自体の失敗である場合は、より便利です。

それで、JUnitには、@ Afterで注釈が付けられたメソッドで発生するエラー/失敗よりも、テストメソッドのエラー/失敗が常に表示されるようにする方法がありますか?

0 投票する
9 に答える
63300 参照

java - テキストファイルを Junit と比較する

以下を使用して、junit でテキスト ファイルを比較しています。

これは、テキスト ファイルを比較する良い方法ですか? 何が好ましいですか?

0 投票する
4 に答える
15934 参照

java - Ant 'junit' タスクの作業ディレクトリを設定するにはどうすればよいですか?

私の Ant ビルドには、いくつかのテストを実行する junit タスクが含まれています。テストを機能させるには、現在の作業ディレクトリ ( user.dir) を指定するプロパティの値を変更する必要がありますが、これを行う方法がわかりません。

問題のタスクは現在次のようになっています。

「dir」属性と「jvmarg」タスクの両方を使用して、作業ディレクトリを C:/workspace/obp-web に変更しようとしたことに注意してください。ただし、詳細出力をオンにして Ant を実行すると、次の出力が表示されます。これは、作業ディレクトリが正しく設定されていないことを示しています。

[junit]同じVMで実行している場合、dir属性は無視されます

[junit] システム プロパティの使用 {java.runtime.name=Java(TM) SE ランタイム環境、sun.boot.library.path=c:\jdk6\jre\bin、java.vm.version=10.0-b23、ant. lib rary.dir=C:\java\apache-ant-1.7.0\lib、java.vm.vendor=Sun Microsystems Inc.、java.vendor.url= http://java.sun.com/、パス。セパレータ=;、java.vm.name=Java HotSpot(TM) クライアント VM、file.encoding.pkg=sun.io、user.country=CA、sun.java.launcher=SUN_STANDARD、sun.os.patch.level= Service Pack 1、java.vm.specification.name=Java 仮想マシン仕様、 user.dir=c:\workspace\obp-ear、java.runtime.version=1.6.0_07-b06、java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment、java.endorse d.dirs=c:\jdk6\jre\lib\endorsed、os.arch=x86、java .io.tmpdir=C:\Users\donal\AppData\Local\Temp\, line.separator=

0 投票する
16 に答える
138024 参照

java - JUnit 4で現在実行中のテストの名前を取得します

JUnit 3 では、現在実行中のテストの名前を次のように取得できました。

「現在のテストはtestSomethingです」と出力します。

JUnit 4でこれを行うためのすぐに使えるまたは簡単な方法はありますか?

背景: 明らかに、テストの名前だけを出力したくはありません。テストと同じ名前のリソースに保存されているテスト固有のデータをロードしたいと考えています。ご存じのように、構成よりも慣習などです。

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

unit-testing - JUnit 例外キャッチ

利用可能なデータベースに依存するいくつかのテストケースを書いているので、@Before と @After で、セッション (Hibernate) を開いたり閉じたり、トランザクションを開始したり終了したりします。

現在、開発の過程でテストケースで例外が発生することがあるため、 @After が呼び出されず、クリーンアップできません (または、実行したいトランザクションをロールバックできません)。

私は(簡単に)ドキュメントをチェックしましたが、これらの予期しない例外をキャッチする方法を見つけることができなかったので、ロールバックして残りのテストを正常に機能させることができます.

ポインタはありますか?

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

java - JUnit が奇妙な AssertionFailedError を生成する

現在、JUnit 4.4 と Java 1.6.x を使用しています。最近のコード修正後、メソッドの JUnit テストで次の AssertionFailedError が発生するようになりました。

UtilityTest.testParseDate(4t): Mon Jan 15 09:26:07 PST 2001 期待: "Mon Jan 15 09:26:07 PST 2001" しかし以前は: "Mon Jan 15 09:26:07 PST 2001"

junit.framework.AssertionFailedError: UtilityTest.testParseDate(4t): 月 1 月 15 日 09:26:07 PST 2001 が期待されます: しかし、UtilityTest.testParseDate で (不明なソース)

ご覧のとおり、expected と actual は同じように見え、何度かコードを検査した後、コードに明らかなエラーは見つかりませんでした。実際のデータを使用したテスト実行でも、正しい (期待される) 結果が得られました。

JUnit で以前にこの動作を見た人はいますか?もしそうなら、原因や修正を見つけましたか?

以前のバージョンの Java と JUnit で同じことを見たことがあります。それが発生するときは常に多少ランダムであり、通常、「機能した」唯一の修正は、コードのチャンクを最初から再入力することでした。奇妙ですが、それがこのエラーを取り除く唯一の方法でした。今回の振る舞いの中で、より「具体的な」ものを見つけようとしています。

ありがとう、

-リチャード

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

java - StrutsでJUnitテストを実行する方法-Ibatis

Struts1.2.xとIbatis2.xバージョンを開発に使用しているので、昨日終了し、テストを実行したいと思います。これは、JUnitを使用するのは初めてです。すでにテストを行っていますが、JavaAppではサーバーで実行されていません。サーバーの動作を使用してモックをシミュレートまたは生成するにはどうすればよいですか?StrutsおよびIbatisの組み込み環境にはどのモックが推奨されますか?

たとえば、ログイン画面の証明書を設定するにはどうすればよいですか?

私はStrutsTestCaseimを使用していることを知っています。また、Cactusはコンテナ用であり、コンテナ以外のシナリオのモックです。strutsとibatisを使用してデモを表示したいので、マッピングからデータを取得する方法がわかりません。ありがとう

私の英語についてごめんなさい

前もって感謝します!

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

android - MacOSのeclipse3.4.1でJunitテストを実行する際の問題

MacOSのeclipse3.4.1でJunitテストを実行する際の問題

このエラーが発生します:'LanuchingAllTests'で問題が発生しました。VMに接続できません。

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

java - XMLUnitRecursiveElementNameAndTextQualifierを使用したXMLの比較

XMLUnit1.2を使用して2つのXMLファイルを比較しようとしています。RecursiveElementNameAndTextQualifier()修飾子を使用しています。

XML内の一部のエンティティの順序を変更すると、XMLUnitが一部のケースを渡し、他のケースでは失敗します。

私のXMLファイルは次のようになり、属性の1つのピアの単純な場所の交換を伴う同様のコピーと比較しています。

XMLファイルの1つでint:1をint:2と交換すると、テストは失敗します。しかし、int:4をint:3と交換すると、通過し続けます。

これが私のテストコードです:

何が問題なのか、そしてなぜXMLUnitが最初のケースでdiffを検出し、2番目のケースでは検出しないのかをアドバイスできますか。この問題の解決策はありますか?

0 投票する
9 に答える
162091 参照

java - ベストプラクティス:setUp()または宣言時にJUnitクラスフィールドを初期化しますか?

このような宣言でクラスフィールドを初期化する必要がありますか?

またはこのようなsetUp()で?

最初のフォームはより簡潔で、最後のフィールドを使用できるため、私は最初のフォームを使用する傾向があります。セットアップにsetUp()メソッドを使用する必要がない場合でも、それを使用する必要がありますか。その理由は何ですか。

明確化: JUnitは、テストメソッドごとに1回テストクラスをインスタンス化します。つまりlist、宣言する場所に関係なく、テストごとに1回作成されます。また、テスト間に時間的な依存関係がないことも意味します。したがって、setUp()を使用することに利点はないようです。ただし、JUnit FAQには、setUp()で空のコレクションを初期化する多くの例があるため、理由があるに違いないと思います。