如何查找直接或间接使用给定 Java 方法的 Junit 测试
假设Eclipse工作区中有Java项目和Junit项目。所有单元测试都位于 Junit 项目中,并依赖于应用程序 Java 项目。当更改 Java 方法时,我需要找到直接或间接使用该方法的单元测试,以便在检查源代码管理之前可以在我的 PC 本地运行相应的测试。我不想运行整个 junit 项目,因为它需要时间。
我可以使用 Eclipse 调用层次结构来逐一展开调用者方法,直到找到测试方法。但对于一个包含超过 100 万行源代码的项目,深入挖掘调用层次结构也需要时间。
调用层次结构视图中的搜索范围似乎没有多大帮助。
感谢任何帮助。
Assume there are Java project and Junit project in an Eclipse workspace. And All the unit tests are located in the Junit project and dependent on the application Java project. When making changes to a Java method, I need to find the unit tests that are using the method directly or indirectly, so that I can run the corresponding tests locally in my PC before checking into source control. I don't want to run the entire junit project since it takes time.
I could use Eclipse call hierarchy to expand caller methods one by one until I find a test method. But for a project including more than 1 million lines of source code, digging down the call hierarchy takes time too.
The search scope within call hierarchy view doesn't seem help much.
Appreciate any help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用测试覆盖率工具。查看我的答案:
如何找到可能直接或间接调用给定方法的所有单元测试? (.net)
Use a test coverage tool. See my answer:
How do I find all the unit tests that may directly or indirectly call a given method? (.net)
为什么不右键单击更改的方法并选择“参考->工作区(或工作集,如果配置正确)”。
这应该会为您提供一个调用您刚刚更改的方法的列表。搜索结果可以按包或项目进行组织。选择项目组织并展开 JUnit 项目,您正在寻找的内容可能是那里唯一的东西。
Why not right click on the changed method and select "References->Workspace (or Working Set if configured properly)".
This should give you a list of methods invoking the one you just changed. The search results can be organized by package or project. Select project organization and expand the JUnit project and what you are looking for will likely be the only thing there.