如何使用静态分析判断'API contract'何时发生变化?(遗留的弹簧-MVC / JSP应用程序)



我正在开发一个使用spring-mvc和jsp的遗留Java应用程序。

为了提供更强大的测试指导/更改影响分析,我想知道何时更改了由 spring-mvc 控制器依赖的任何类。

系统中所有类中的几乎所有方法都有一个最终以一个或多个控制器终结点结尾的调用层次结构,我想在进行更改时确定这些控制器终结点,以便提供更好的测试指导。

例如:

MyRepository类依赖于MyService类,类依赖于MyServiceFacade类,类依赖于MyManager类,类依赖于MyController类,然后是类中定义的终结点方法MyController类。

我希望能够运行静态分析以显示MyEndpoint方法@RequestMapping注释,如果我更改MyRepository或由@RequestMapping注释的方法(或类似注释(所依赖的任何其他类。

我可能可以自己构建工具来实现这一目标,但我很好奇是否有人有任何关于如何使用 IDE、现有静态分析工具、某种类型的分析工具或任何类似工具实现这一目标的提示。

是的,有一个名为JCCI的工具可以帮助您,我是作者,最近开始打开, 皮皮:https://pypi.org/project/jcci/GitHub:https://github.com/baikaishuipp/jcci

有一个示例结果:JCCI结果

最新更新