我想进行 JUnit 测试以确保某些类不使用一组特定的方法(来自另一个类)。例子
class MyClass
{
void myMethod()
{
otherClass.otherClassStaticMethod();
}
}
class myTest
{
void test()
{
assertFalse(CalledMethods.getMethodsCalledBy("myClass.myMethod").Contains("otherClass.otherClassStaticMethod"));
}
}
在这个测试中,我想确保 myMethod 不会调用 otherClassStaticMethod。如何在编译时找到方法内部调用了哪些方法(忽略使用反射调用的方法)?我想到了一个 .java 解析器,你有什么推荐的吗?