我有一个SoapUI项目和一个外部自定义Java实用程序库,这些实用程序库是我为在Groovy脚本中使用而编写的。
在Java库中,我有一个特定的实用程序类com.custom.acmeproject.ContextProperties
,它具有用于在groovy脚本上下文中更改属性值的实用程序方法。使用此类,我可以在groovy脚本文件中执行以下操作:
import com.custom.acmeproject.ContextProperties;
ContextProperties.increment(context, "messageId");
>
但是,我希望能够在不使用import语句的情况下编写该脚本。有没有一种方法可以设置我的SoapUI项目来自动将这个类导入到我的所有Groovy脚本中?
我希望能够仅为这个SoapUI项目执行此操作,而不会影响其他SoapUI项目;但是,如果这不可能,我将采用会影响我所有项目的解决方案。
因为这个SoapUI项目是使用
Jenkins中的maven构建运行自动化的,所以我需要这个解决方案来运行
SoapUI IDE中的测试(我使用的是SoapUI NG Pro),以及使用soapui-pro-maven-plugin
运行测试
。
最好是,任何解决方案也可以工作,而不必跨多个环境在SoapUI之外手动配置Groovy设置。
我想做的事可能吗?
我知道您完全了解外部库是如何编写、编译、构建jar文件并放置在SoapUI Pro
下的,SoapUI Open Source
版本的过程也是如此。
我还了解到,您还知道如何在java中对其进行编码,并了解如何更好地组织类文件,以及如何传达创建库的人(个人或组织)和标准实践。但这是可选的。
但是,我希望能够在不使用import语句的情况下编写该脚本。有没有一种方法可以设置我的SoapUI项目来自动将这个类导入到我的所有Groovy脚本中?
因此,正如您在问题中提到的,为了避免Groovy Script
中的导入
,请使用其中一个打击:
我希望能够仅为这个SoapUI项目执行此操作,而不会影响其他SoapUI项目;但是,如果这不可能,我将采用会影响我所有项目的解决方案。
这些库被加载到SoapUI
中,并且不特定/仅限于一个项目,适用于所有项目。但我相信,除非这些在多个项目中使用并且不根据更新进行更改,否则不会有效果。否则,应该可以。
因为这个SoapUI项目是使用Jenkins中的maven构建运行自动化的,所以我需要这个解决方案来运行SoapUI IDE中的测试(我使用的是SoapUI NG Pro),以及使用soapui-pro-maven-plugin
运行测试。
是的,如果您将库文件放置在所需的位置下,其工作方式相同。您是否尝试过这样做并发现了任何问题?
最好是,任何解决方案也可以工作,而不必在SoapUI之外跨多个环境手动配置Groovy设置。
您觉得配置Groovy设置
有什么变化?没有这样的东西。如果您发现有,只需更新它。如果SoapUI项目在具有Groovy
脚本的工具中运行顺利,那么它应该可以从所有渠道顺利运行,即运行命令行、使用ant、maven、jenkins等。
听起来不错吗?
我在从groovy脚本(groovy脚本是SoapUI测试套件的一部分)运行java代码时遇到了问题,我创建了简单的脚本: TopClass的代码: 我将myjar.jar放入soapui-pro-2.5\lib和soapui-pro-2.5\bin\ext文件夹中。但行书我得到: org.codehaus.groovy.control.multipleCompilationerrorsExcep
当我尝试在soapUI测试步骤中解析响应时,收到了以下异常。也尝试了getXMLHolder方法。还是没运气。 答复如下
在我的Jenkins构建中,我有一个Groovy脚本(因为我使用的是管道插件),在这个脚本中,我试图使用OkHttpClient进行API调用。 我从这里获得了以下葡萄代码: 为此,我得到: 知道有什么问题吗? 在Jenkins管道脚本中运行时,Grape不能检索包吗?
谢谢你的帮助
我试图使用groovy脚本创建Soapui项目。当直接从SoapUI运行它时,脚本工作正常,并且创建了使用WSDL的新项目。 该脚本是在:Project->TestSuite->TestCase->Groovy脚本中创建的 脚本在中正常工作。但是,在使用运行时失败,如下所示: 错误:java.lang.NullPointerException:无法对空对象调用方法createProject()