Das erste Mal mit EasyMock und Spring zusammen.EasyMock And Spring Autowired
Ich habe die Testklasse:
@RunWith(EasyMockRunner.class)
public class ProjectServiceTest {
private ProjectRepository projectRepositoryMock;
private ProjectService service;
@Before
public void setUp() throws Exception {
Project project = new Project("Project");
project.setId(1);
EasyMock.expect(projectRepositoryMock.findOne(1)).andReturn(project);
}
@After
public void tearDown() throws Exception {
}
@Test
public void getProjectById() throws Exception {
}
Das ist mein Projekt Einheit:
@Entity
@Table(name = "Project")
public class Project {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private String projectName;
public Project(){
}
public Project(String projectName) {
this.projectNaam = projectName;
}
Es auch die üblichen Getter und Setter hat.
Mein Repository erweitert nur das JpaRepository.
Und das ist meine ProjectService Klasse
@Service
public class ProjectService {
@Autowired
private ProjectRepository projectRepository;
public ProjectService(){
}
public Project getProjectById(Integer id){
return this.projectRepository.findOne(id);
}
public void saveProject(Project project){
this.projectRepository.save(project);
}
public void deleteProject(Integer id){
this.projectRepository.delete(id);
}
public List<Project> getAllProjects(){
return this.projectRepository.findAll();
}
public Project findProjectById(Integer id){
return this.projectRepository.findOne(id);
}
}
Wenn ich meine Testklasse laufen bekomme ich den Fehler: java.lang.NullPointerException bei com.example.testclusters.Service.ProjectServiceTest.setUp (ProjectServiceTest.java : 25)
Ich denke, es hat etwas mit der Feld-ID auf der Projekt-Entität zu tun ist generiert. Wie ist es möglich, diesen Service mit EasyMock zu testen?
Haben Sie Ihre 'projectRepositoryMock'-Variable zugewiesen? – Tobb