2011-07-13 54 views
1

有没有办法来检查当前的方法拦截器存在?弹簧:检查目前的拦截器

一个例子:如果我调试下面的方法(该方法中的任何行)

@OpenSession 
@Transactional 
public void run() { 
    // do something ... 
} 

是可以检查@OpenSession和@Transactional拦截器实际上是做他们的工作?

回答

1

你需要写一个测试(测试驱动设计)验证注释的副作用你想拥有。

测试没有标注应该失败,如果注释触发你所需要的行动应该通过。

+0

我不知道。如果你这样做,你正在测试的框架。这应该是留给那些开发框架的人。 –

+0

@Sean Patrick Fl oyd:我不这么认为:我不想测试注释的工作方式(以Whitebox的方式)。我想测试该功能在黑盒测试中的作用。而通过这个测试,一种方法是,该函数使用框架功能。 – Ralph

+0

够公平:-) –