zoukankan      html  css  js  c++  java
  • SOAP UI返回脚本用 groovy脚本编写不同条件返回

    如果对于不同的条件判断,希望得到的 response有些节点不同,则可以用这种soap ui groovy脚本编写方式进行

    script编写的示例:

    --------------------------log.info的日志输出,是在 soapUI的安装路D: oolsSoapUI-5.2.1in 径下面的 文件 global-groovy.log 中有对应的记录

    ------得到mock的请求的 xml内容
    def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
    def holder = groovyUtils.getXmlHolder(mockRequest.requestContent)
    log.info("*********jiaoltjiaolt11111**********************************************************")
    def code=holder.getNodeValue("//arg1")
    log.info("code的值是:"+code)

    def remark2=holder.getNodeValue("//remark2")
    log.info("remark2的值是:"+remark2)

    def internalCode=holder.getNodeValue("//internalCode")
    log.info("internalCode的值是:"+internalCode)
     
     
    ------得到mock的返回的 xml内容
    def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
    def holder = groovyUtils.getXmlHolder(mockResponse.responseContent)
    log.info("*********jiaoltjiaolt11111**********************************************************")
    def agentCateName=holder.getNodeValue("//agentCateName")
    log.info("agentCateName的值是:"+agentCateName)

    def agentId=holder.getNodeValue("//agentId")
    log.info("agentId的值是:"+agentId)

    def internalCode=holder.getNodeValue("//internalCode")
    log.info("internalCode的值是:"+internalCode)

    log.info("**************testtest2222*****************************************************")
     
     
     ------------------------编写条件判断-------------------
    def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
    def holder = groovyUtils.getXmlHolder(mockRequest.requestContent)
    def code=holder.getNodeValue("//arg1")
    log.info("code的值是:"+code)
    log.info("整个得到的mock请求的报文是:"+ mockRequest.requestContent)
    def successed="true"
    if (code=="2928681")
    successed="true"
    else
    successed="false"
    context.setProperty("successed",successed)

    log.info("**************testtest2222*****************************************************")
     

    对应的response的报文如下:

  • 相关阅读:
    SpringBoot + redis + @Cacheable注解实现缓存清除缓存
    Linux常用命令
    Java8 Stream分组
    VMware CentOS网络配置(局域网其它主机可访问Linux虚拟机)
    Jenkins实现自动打包,MAVEN打包,Shell脚本启动
    Docker常用命令,Docker安装Nginx、Redis、Jenkins、tomcat、MySQL
    Postman配置Pre-request scripts预请求对请求进行AES加密
    《Java并发编程的艺术》并发编程的基础(四)
    linux shell的创建与启动
    《Java并发编程的艺术》Java内存模型(三)
  • 原文地址:https://www.cnblogs.com/xiaofeng91/p/13986079.html
Copyright © 2011-2022 走看看