在SoapUI中使用Groovy创建项目属性
在我当前的SoapUI工作区中,我有50多个测试。我需要在所有这些测试中添加一个新的项目级参数。有没有一种方法可以在SoapUI中使用groovy控制台来实现这一点 例如:在SoapUI中使用Groovy创建项目属性,groovy,soapui,Groovy,Soapui,在我当前的SoapUI工作区中,我有50多个测试。我需要在所有这些测试中添加一个新的项目级参数。有没有一种方法可以在SoapUI中使用groovy控制台来实现这一点 例如: testRunner.testCase.testSuite.project.setPropertyValue( "SuperMan",("SuperMan")); 我可以运行此命令在当前工作项目中创建属性。 是否有一种方法可以在我当前工作区的所有项目下创建此文件 提前谢谢 是的,我们可以这样做,但有点棘手 方法: 在s
testRunner.testCase.testSuite.project.setPropertyValue( "SuperMan",("SuperMan"));
我可以运行此命令在当前工作项目中创建属性。
是否有一种方法可以在我当前工作区的所有项目下创建此文件
提前谢谢 是的,我们可以这样做,但有点棘手 方法:
for(project in com.eviware.soapui.SoapUI.workspace.projectList) {
if(project.open && project.name != testRunner.testCase.testSuite.project.name){
project.setPropertyValue( "TestProperty","TestValue");
}
}
如果这解决了您的问题,请将此标记为正确的响应。使用您的
testRunner
访问权限,您只需再增加一个级别即可。从这里,您可以访问projects
map并迭代添加属性的每个项目:
testRunner.testCase.testSuite.project.workspace.projects.each{ key, proj ->
proj.setPropertyValue('superman','superman')
}
此代码不会在工作区中的已关闭项目上添加属性,但访问它时不会失败
或者,正如@Rao在其评论中所建议的,可以使用默认的it
对象迭代器并访问值
,而不是在上定义键、项目->
:
testRunner.testCase.testSuite.project.workspace.projects.each{
it.value.setPropertyValue('superman','superman')
}
为了清晰起见,我更喜欢第一种方法
希望有帮助,好吧,它很管用<代码>键
可能不是真正需要的,但没有什么害处。@Rao为了清楚起见,我使用键,proj->
,但是是的,当然OP可以使用默认的它
并访问它。value
来设置属性值
:)
。谢谢你的评论!。我的意思是,只有proj
就足够了,因为key
被传递而没有被使用。任何你更新的外观。谢谢你抽出时间。