时髦的脚本运行,调试并从代码中单步执行(没有IDE),这可能吗?



我正在探索使用Groovy作为我下一个项目的默认脚本语言。一些基本要求是:

  1. 加载并运行Groovy脚本,发送参数并获取结果,我知道这可以使用GroovyShell或GroovyScriptEngine来完成。

  2. 能够在调试模式下运行,单步执行脚本的语句(无需管理断点,而是在代码中执行语句并查看当前范围内变量的值)。

是的,这就像一个小IDE,但应该集成到应用程序中,该应用程序管理并行运行许多脚本,并将某些脚本的输出发送到其他脚本的输入(是管道和过滤器体系结构 http://www.enterpriseintegrationpatterns.com/patterns/messaging/PipesAndFilters.html)。

我不确定 Groovy 是否单独提供调试和单步执行 groovy 代码,或者应该使用 Java 平台调试器架构,或者是否应该通过将 IDE 嵌入到这个系统中来完成(也许可以嵌入 Eclipse 组件)。

这些是我对使用Groovy的可能性的主要担忧/疑虑。 欢迎任何指示。

简短的回答是"在我知道的应用程序中嵌入调试功能没有简单的方法"。请提供解决方法说明以使用配套 IDE 或开始深入研究具有嵌入式脚本调试器功能的任何开源项目...并成为相关贡献开发人员的好朋友:-)。

更多信息:

使用开源软件时,一切皆有可能。是的,您可以构建一个调试器,将脚本的执行(假设您可以保持进程/线程分开)挂钩到单步执行、在断点处创建/停止、读取当前内存中的变量等。

示例:SmartBear ReadyAPISoapUI NG PROv4.6+(?) 在其"Groovy Script"测试步骤编辑器窗格中嵌入了一些基础调试。(免责声明:SmartBear 可能使用其他语言或库来构建其调试器功能。我也不确定此功能是否/何时会进入 SoapUI 开源项目 - 调试被明确标记为 PRO(付费)功能。

警告:

  1. 实现调试器功能是一项主要功能。您需要调试器开发经验(和/甚至更多时间)来构建与实际应用程序无关的功能。在继续之前,请确保您确实需要此嵌入式调试。

  2. 您应该从现有的开源 groovy 调试器开始,以嵌入到您的应用程序中......如果存在的话。SmartBear SoapUI NG PRO 将是一个开始...但PRO功能不是开源的。

最新更新