我试图使用 Soapui 4.5 pro 中提供的环境功能,但它不起作用:( 之前有人尝试过,或者有其他方法可以实现吗?对我来说,每个环境都有不同的数据库连接和 API 端点。非常感谢帮助。
http://www.soapui.org/Working-with-Projects/environment-handling-in-soapui.html
我试图使用 Soapui 4.5 pro 中提供的环境功能,但它不起作用:( 之前有人尝试过,或者有其他方法可以实现吗?对我来说,每个环境都有不同的数据库连接和 API 端点。非常感谢帮助。
http://www.soapui.org/Working-with-Projects/environment-handling-in-soapui.html
您可以尝试为项目使用“加载脚本”: 当您运行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
解决方案也可用于非专业版
要获得数据库连接,您可以使用 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。我仍在寻找如何从“环境”设置中获取服务端点。