0

我试图使用 Soapui 4.5 pro 中提供的环境功能,但它不起作用:( 之前有人尝试过,或者有其他方法可以实现吗?对我来说,每个环境都有不同的数据库连接和 API 端点。非常感谢帮助。

http://www.soapui.org/Working-with-Projects/environment-handling-in-soapui.html

4

2 回答 2

1

您可以尝试为项目使用“加载脚本”: 在此处输入图像描述当您运行soapui 或testrunner 并从配置文件中获取端点(或其他一些参数,例如数据库连接)时,该脚本总是会执行。

脚本代码:

import com.eviware.soapui.SoapUI
import com.eviware.soapui.model.testsuite.TestRunner

def utils = new com.eviware.soapui.support.GroovyUtils(context)

// load config file
def pathConfig = utils.projectPath + "/<path to your project>/config/"
def config = new java.util.Properties()
config.load(new java.io.FileInputStream(pathConfig + "config.ini"))

// set the project endpoint from the config
props = project
props.setPropertyValue("Env", config.getProperty("endpoint"))

log.info "Running test for: " + config.getProperty("endpoint");

如您所见,该脚本将您的端点放入自定义项目变量Env中。因此,在您的所有请求中,您应该使用端点http://${#Project#Env}

配置文件:

endpoint = dev.mysite.com

解决方案也可用于非专业版

于 2014-10-17T10:11:55.663 回答
0

要获得数据库连接,您可以使用 GroovyUtilsPro 类,https: //www.soapui.org/apidocs/pro/com/eviware/soapui/support/GroovyUtilsPro.html

例如。

def utils = new com.eviware.soapui.support.GroovyUtilsPro(context)\
def conn = utils.getJdbcConnection("{the Name of your JDBC Connections in Environments}")

这仅适用于soapUI pro。我仍在寻找如何从“环境”设置中获取服务端点。

于 2015-06-22T03:09:09.077 回答