首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >没有使用mockito的依赖注入

没有使用mockito的依赖注入
EN

Stack Overflow用户
提问于 2019-06-26 06:25:36
回答 2查看 234关注 0票数 1

我正在试着写一个Mockito测试,不幸的是出了点问题。我的类如下:

我的测试类:

代码语言:javascript
复制
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;

public class TestClass {

    @Nested
    public class testingPersonClass{

        @InjectMocks
        public Person personOne = new Person("zakzak", 37);

        @Mock
        public  Hobbie hobbie = new Hobbie("Sport");

        @Test
        public void tesOne(){
            System.out.println("personOne "+personOne.toString());
        }
    }
}

Person

代码语言:javascript
复制
public class Person {

    String name;
    int age;
    Hobbie hobbie;


    Person(String name, int age){
        this.age=age;
        this.name=name;
    }

   //getters and setters

    @Override
    public String toString() {
        return this.name+" "+this.age+" "+ this.hobbie.toString();
    }
}

Hobbie

代码语言:javascript
复制
public class Hobbie {

    String hobbie;

    public Hobbie( String hobbie ) {
        this.hobbie = hobbie;
    }

    @Override
    public String toString() {
        return this.hobbie;
    }
}

我得到了一个

java.lang.NullPointerException

因为还没有在personOne对象中注入hobbie对象。

我该如何解决这个问题呢?

我的Pom依赖项:

代码语言:javascript
复制
    <dependencies>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <version>2.23.4</version>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <version>5.1.0</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56762794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档