1

我正在使用 Spring MVC,使用休眠和 JPA 配置,并且正在使用 Mockito 对其进行测试。我收到一个错误,但我看不出我错在哪里以及测试失败的原因。

@RunWith(MockitoJUnitRunner.class)
public class StudentServiceTest {
  // @Autowired
  @Mock
  private StudentDAO studentDAO;
  @Mock
  private List<Student> studentS = new ArrayList<Student>();
  @Before
  public void setUp() {
    MockitoAnnotations.initMocks(this);
    studentDAO = Mockito.mock(StudentDAO.class);
  }

  @Test
  public void insertTest() {
    System.out.println("Insert Student using When mockito");
    Student stu = new Student(1502, "studentName", "birdthDay", "birdthPlace", "admissionDay", 10f);
    doNothing().when(studentDAO).insert(Mockito.any(Student.class));
    studentDAO.insert(stu);
    Student studenl = new Student();
    when(studentDAO.getStudentByStudentNumber(Mockito.anyInt())).thenReturn(Mockito.any(Student.class));
    studenl = studentDAO.getStudentByStudentNumber(stu.getStudentNumber());
    System.out.println(studenl);
    assertEquals(stu.getStudentNumber(), studenl.getStudentNumber());
    assertEquals(stu.getStudentName(), studenl.getStudentName());
    assertEquals(stu.getBirthDay(), studenl.getBirthDay());
    assertEquals(stu.getBirthPlace(), studenl.getBirthPlace());
    assertEquals(stu.getAdmissionDay(), studenl.getAdmissionDay());
    assertEquals(stu.getScore(), studenl.getScore());
  }

我得到一个:

java.lang.NullPointerException
  at com.ids.demo.test.service.StudentServiceTest.insertTest(StudentServiceTest.java:60)
4

0 回答 0