-1

何らかの理由で、私のテストクラスは動作し、Eclipse で合格しますが、コマンドラインからそれを使用しようとするmvn test -Dtest=BmwTestと失敗します。それが与える理由は次のとおりです。

java.lang.AssertionError: Never found parameters that satisfied method assumptions.  Violated assumptions: []

私のコード:

@RunWith(Theories.class)
public class BmwTest {

    @DataPoints
    public static Integer[] a = { 
             1,
             2,
             3
    };

    @Theory
    public void testMyTest(Integer a) {

    }

}

プリミティブ ( int) を使用してみましたが、それでも同じエラーが発生します。単数形の注釈は@DataPoint機能しますが、複数形の注釈@DataPointsは機能しません。どうしたの?多くの助けに感謝します!ありがとう

4

1 に答える 1

0

いろいろ調べてみたところ、junit-dep が問題の原因であることがわかりました。テスト クラスパスを確認したところ、junit.jar と junit-dep.jar の両方が含まれていました。基本的に、それらは同じです。唯一の違いは、junit-dep.jar に hamcrest ライブラリが含まれていないことです。junit-dep がどこから来たのか疑問に思われている方のために説明すると、これは jmock の依存関係であり、私たちが使用していることを忘れていました。pom の junit-dep 依存関係を削除したところ、すべてが機能しました。

<dependency>
    <groupId>org.jmock</groupId>
    <artifactId>jmock-junit4</artifactId>
    <version>2.6.0</version>
        <exclusions>
            <exclusion>  
                <groupId>junit</groupId>
                <artifactId>junit-dep</artifactId>
            </exclusion>
        </exclusions> 
</dependency>    
于 2013-07-27T01:08:09.350 に答える