タグ付けされた質問 「junit」

JavaとScalaで人気のユニットテストフレームワーク。最新バージョンのJUnit 5は、豊富な注釈ベースのテストとパラメーター化されたテストをサポートしています。使用例を示すために、JavaまたはScalaタグと組み合わせて使用​​することを検討してください。

9
JUnitで正規表現の一致をアサートします
RubyにTest::Unitは、assert_matches正規表現が文字列と一致することを表明するための単体テストで使用できる優れたメソッドがあります。 JUnitにこのようなものはありますか?現在、私はこれを行います: assertEquals(true, actual.matches(expectedRegex));
84 java  regex  junit 

5
JUnitテストクラス全体でSpringアプリケーションコンテキストを再利用する
多数のJUnitテストケース(統合テスト)があり、それらは論理的に異なるテストクラスにグループ化されています。 http://static.springsource.org/spring/docs/current/spring-framework-referenceに記載されているように、Springアプリケーションコンテキストをテストクラスごとに1回ロードし、JUnitテストクラスのすべてのテストケースで再利用できます。/html/testing.html ただし、一連のJUnitテストクラスに対してSpringアプリケーションコンテキストを1回だけロードする方法があるかどうか疑問に思っていました。 FWIWでは、Spring 3.0.5、JUnit 4.5を使用し、Mavenを使用してプロジェクトをビルドします。

17
junitのjava.lang.NoClassDefFoundError
junitテストコードのJavaでこのエラーが発生します。ネットで調べたところ、クラスパスにjunit.jarを追加する必要があると表示されました。 Eclipseでは、プロジェクトプロパティウィンドウのクラスパスに追加しましたが、それでも初期化エラーが発生します。私は何をすべきか..? これはエラーの完全なトレースです。 java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at org.junit.internal.builders.JUnit4Builder.runnerForClass(JUnit4Builder.java:13) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57) at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29) at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57) at …

7
シミュレートされたユーザー入力を使用したJUnitテスト
ユーザー入力を必要とするメソッドのJUnitテストをいくつか作成しようとしています。テスト対象のメソッドは、次のメソッドのようになります。 public static int testUserInput() { Scanner keyboard = new Scanner(System.in); System.out.println("Give a number between 1 and 10"); int input = keyboard.nextInt(); while (input < 1 || input > 10) { System.out.println("Wrong number, try again."); input = keyboard.nextInt(); } return input; } JUnitテストメソッドで私や他の誰かが手動でこれを行う代わりに、プログラムを自動的にintに渡す方法はありますか?ユーザー入力をシミュレートするのが好きですか? 前もって感謝します。

10
AssertEquals2リストは順序を無視します
それは本当に簡単な質問だと思います。しかし、どういうわけか私はグーグルで答えを見つけることができません。 文字列のリストが2つあると仮定します。最初の文字列には「文字列A」と「文字列B」が含まれ、2番目の文字列には「文字列B」と「文字列A」が含まれます(順序の違いに注意してください)。それらをJUnitでテストして、まったく同じ文字列が含まれているかどうかを確認したいと思います。 順序を無視する文字列の同等性をチェックするアサーションはありますか?与えられた例では、org.junit.Assert.assertEqualsはAssertionErrorをスローします java.lang.AssertionError: expected:<[String A, String B]> but was:<[String B, String A]> 回避策は、最初にリストをソートしてから、それらをアサーションに渡すことです。しかし、私は自分のコードをできるだけシンプルでクリーンにしたいと思っています。 Hamcrest 1.3、JUnit 4.11、Mockito1.9.5を使用しています。

6
失敗したJUnitテストをすぐに再実行する方法は?
もう一度実行を試みるだけで、失敗したすべてのテストに2回目のチャンスを与えるJUnitルールまたは同様のものを作成する方法はありますか? 背景:JUnitで記述されたSelenium2-WebDriverテストの大規模なセットがあります。非常にアグレッシブなタイミング(クリック後の待機時間が短い)が原因で、サーバーの応答が少し遅くなることがあるため、一部のテスト(100回に1回、常に異なるテスト)が失敗する可能性があります。しかし、待機期間を長くすることはできません。テストには永遠に時間がかかるためです。)-したがって、このユースケースでは、1秒必要な場合でもテストが緑色であることが許容されると思います。試してみてください。 もちろん、過半数の3分の2を使用する方がよいでしょう(失敗したテストを3回繰り返し、2つのテストが正しければ、それらを正しいと見なします)が、これは将来の改善になります。
81 java  testing  junit 

19
さまざまなレベルの精度でDateオブジェクトを比較する
ミリ秒が異なるために失敗するJUnitテストがあります。この場合、ミリ秒は気にしません。ミリ秒を無視するようにアサーションの精度を変更するにはどうすればよいですか(または設定したい精度)? 合格したい失敗したアサーションの例: Date dateOne = new Date(); dateOne.setTime(61202516585000L); Date dateTwo = new Date(); dateTwo.setTime(61202516585123L); assertEquals(dateOne, dateTwo);
81 java  junit 

12
ログでメソッドeをモックする方法
ここで、Utils.javaはテスト対象のクラスであり、以下はUtilsTestクラスで呼び出されるメソッドです。以下に示すようにLog.eメソッドをモックしている場合でも @Before public void setUp() { when(Log.e(any(String.class),any(String.class))).thenReturn(any(Integer.class)); utils = spy(new Utils()); } 次の例外が発生します java.lang.RuntimeException: Method e in android.util.Log not mocked. See http://g.co/androidstudio/not-mocked for details. at android.util.Log.e(Log.java) at com.xxx.demo.utils.UtilsTest.setUp(UtilsTest.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) at …
81 android  junit  mockito 

16
Maven3およびJUnit4のコンパイルの問題:パッケージorg.junitが存在しません
Mavenを使用して単純なJavaプロジェクトを構築しようとしています。私のpomファイルでは、JUnit4.8.2を唯一の依存関係として宣言しています。それでもMavenはJUnitバージョン3.8.1の使用を主張しています。どうすれば修正できますか? この問題は、「パッケージorg.junitが存在しません」というコンパイルの失敗に現れます。これは、ソースコードのimportステートメントが原因です。JUnit 4. *での正しいパッケージ名はorg.junit。*ですが、バージョン3. *ではjunit.framework。*です。 http://maven.apache.org/plugins/maven-surefire-plugin/examples/junit.htmlで問題の根本に関するドキュメントを見つけたと思いますが、そこでのアドバイスはMavenの専門家を対象としているようです。どうしたらいいのかわからなかった。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.