这是我的代码:

public class MyTest {
    @NonNull
    private MyObject MyObjectClient;

    private Object copyOfTestObject;

    public TestMyResult methodFoo(Object testobject) {
        ...
        ...
        ...
        copyOfTestObject = clone(testObject);
    }


}


现在,我有一个关于此类的单元测试:

public class MyTestUnitTest {

    @Rule public MockitoRule mockitoRule = MockitoJUnit.rule();

    private MyTest classUnderTest;

    @Test
    public void testNulls() {
        NullPointerTester nullPointerTester = new NullPointerTester();
        nullPointerTester.testConstructors(MyTest.class, NullPointerTester.Visibility.PACKAGE);
        nullPointerTester.testAllPublicInstanceMethods(classUnderTest);
    }
}


运行单元测试时,我不断收到此错误:
对于类MyTest,没有从MyTest(MyObject,MyObject2)的索引1处的参数引发异常。

我不清楚为什么会引发此错误。我是否必须将注释@Nullable添加到copyOfTestObject变量?如果没有,是否有办法进行此单元测试?

谢谢。

最佳答案

看起来问题不在于methodFoo,而与构造函数MyTest(MyObject, MyObject2) ...有关。MyObject2参数不是@Nullable,如果传递了null,则构造函数不会引发异常。

关于java - Guava null测试仪不断抛出错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44347149/

10-13 01:14