小编Fab*_*ima的帖子

Spring AOP Aspect不使用Mockito

我有一个@Aspect编织所有控制器动作方法的执行.它在我运行系统时工作正常,但在单元测试中没有.我用以下方式使用Mockito和junit:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:**/spring-context.xml")
@WebAppConfiguration
public class UserControllerTest {        
    private MockMvc mockMvc;

    @Mock
    private RoleService roleService;

    @InjectMocks
    private UserController userController;

    @Before
    public void setUp() {
       MockitoAnnotations.initMocks(this);                    
       ...    
       mockMvc = MockMvcBuilders.standaloneSetup(userController).build();
    }    
    ...
}
Run Code Online (Sandbox Code Playgroud)

一些@Test使用mockMvc.perform().

我的看点是:

@Pointcut("within(@org.springframework.stereotype.Controller *)")
public void controller() { }

@Pointcut("execution(* mypackage.controller.*Controller.*(..))")
public void methodPointcut() { }

@Around("controller() && methodPointcut()")
...
Run Code Online (Sandbox Code Playgroud)

junit aop spring mockito

7
推荐指数
2
解决办法
7324
查看次数

标签 统计

aop ×1

junit ×1

mockito ×1

spring ×1