2017-02-15 40 views
1

定製標註我有一些測試需要Spring上下文來運行:上測試

@SpringBootTest 
@ContextConfiguration(classes = Application.class) 
@Transactional 
@ActiveProfiles("test") 
@Rollback 
@RunWith(SpringRunner.class) 
public class SomeTest() { 

    @Test 
    public void test() { 
     ... 
    } 

} 

我已創建自定義註解測試:

@Target(ElementType.TYPE) 
@Retention(RetentionPolicy.RUNTIME) 
@Inherited 
@SpringBootTest 
@ContextConfiguration(classes = Application.class) 
@Transactional 
@ActiveProfiles("test") 
@Rollback 
@RunWith(SpringRunner.class) 
public @interface DBTest { 
} 

現在 - 當我使用上@DBTest註釋我測試:

@DBTest 
public class SomeTest { 

    @Test 
    public void test() { 
     ... 
    } 

} 

在這種情況下,Spring上下文未啓動。 我該如何開始?

回答

2

嘗試將@RunWith(SpringRunner.class)放入SomeTest類的批註中。爲了應用您需要彈出的註釋來分析它們。但是因爲你的RunWith不在你的類中,所以jUnit框架不會啓動spring,而這又不會分析註釋。

+0

在您的課堂上,而不是在註釋上 – Igor