2017-05-14 9 views
0

는 내가 뭔가를 실행할 수 있습니다속성을 Spring 테스트 클래스와 동등하게 설정 한 후에는?

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(classes={MainConfig.class}) 
public class AbstractCSVFileProcessOpTest { 

    @Autowired 
    FileSource fileSource; 

    @Autowired 
    ReadFileOp readFileOp; 

같은 클래스 후를 autowire 필드가 초기화가? 테스트에서 InitializingBean과 같은 느낌?

답변

1

@PostConstruct을 사용하면 생성자가 작업을 완료 한 직후에 특정 메서드를 실행할 수 있습니다.

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(classes={MainConfig.class}) 
public class AbstractCSVFileProcessOpTest { 

    @Autowired 
    FileSource fileSource; 

    @Autowired 
    ReadFileOp readFileOp; 

    @PostConstruct 
    public void init() { 
     // do your task here 
    } 
} 

PostConstruct 주석은, 의존성 분사 후에 초기화를 위해서 실행해야하는 방법에 사용된다.

또한 junit@BeforeClass을 활용하여 특정 클래스에서 테스트를 실행하기 전에 메서드를 실행할 수 있습니다.

+0

'fileSource'와'readFileOp'가 설정된 후에 코드를 실행해야합니다. 'PostContruct'가 그 일을 할 것인지 확신 할 수 없습니다. – Dims

+0

예,'@ PostConstruct'가 당신이 찾고있는 것입니다. – ansh