import com.eviware.soapui.support.GroovyUtils
import com.eviware.soapui.support.XmlHolder
import org.w3c.dom.Node
import org.apache.commons.lang.StringUtils
import java.util.HashSet def groovyUtils = new GroovyUtils(context)
def xmlHolder = groovyUtils.getXmlHolder(messageExchange.getResponseContent())
def activeEnv = context.expand( '${#Project#activeEnv}' )
log.info "The active environment is $activeEnv" String[] fixClientIdArray
if(activeEnv=="LIVE"){
fixClientIdArray = new String[2]
fixClientIdArray[0] = "6e2ba3e9-68a4-4c8f-a164-f026e7239cf7"
fixClientIdArray[1] = "dfba4888-348a-4fb1-91f7-8a03fb6aa775"
} if(activeEnv=="QA"){
fixClientIdArray = new String[3]
fixClientIdArray[0] = "6fe9b969-3711-4083-a8c4-186e75e6e9e7"
fixClientIdArray[1] = "43ec112f-cd57-4d84-a5e8-1d62e1f71244"
fixClientIdArray[2] = "8c8e3e6a-0cb1-41d0-a07b-ca3fff506cee"
} def fixSet = new HashSet() for(String clientId : fixClientIdArray){
fixSet.add(clientId)
} String xPath = "//clients/client"
Node[] nodeArray = xmlHolder.getDomNodes(xPath)
int actualCount = nodeArray.length
int expectedCount = context.expand('${#Project#ClientCount}').toInteger() assert fixSet.size() == expectedCount log.info "Actual : nodeArray.length of "+xPath+" : "+actualCount
log.info "Expected : nodeArray.length is : "+expectedCount
assert actualCount==expectedCount String clientIdPath = xPath + "/@id" String[] valueArray = xmlHolder.getNodeValues(clientIdPath)
log.info "valueArray.length of "+clientIdPath+":"+valueArray.length
assert valueArray != null && valueArray.length>0
for(String value : valueArray){
log.info "value:"+value
assert StringUtils.isNotBlank(value)
assert fixSet.contains(value) fixSet.remove(value)
} assert fixSet.size() == 0

[Groovy]获取当前活动的Environment,获取response中节点的name和节点的value的更多相关文章

  1. Ruby操作VBA的注意事项和技巧(1):乱码、获取VBA活动和非活动窗口的名称与路径、文件路径的智能拼接与截取(写入日期)

    1.VBA编辑器复制粘贴出来的代码乱码     解决方法:切换到中文输入模式再复制出来就行了 2.获取VBA活动和非活动窗口的名称与路径 Dim wbpath, filename As String ...

  2. C# -- 使用System.Environment获取电脑的相关属性

    使用System.Environment获取电脑的相关属性 1.使用System.Environment获取电脑的相关属性(入门案例) static void Main(string[] args) ...

  3. C#获取当前活动窗口句柄

    c# 获取当前活动窗口句柄,获取窗口大小及位置 2018年04月26日 13:48:21 漂泊_人生 阅读数:1889   需调用API函数 需在开头引入命名空间using System.Runtim ...

  4. 爬虫——response中获取的不带主域名的url的拼接

    scrapy中response提取的没有主域名的url拼接 # 1.导入urllib的parse # 2.调用parse.urljoin()进行拼接,例子中response.url会自动提取出当前页面 ...

  5. C#开发BIMFACE系列17 服务端API之获取模型数据2:获取构件材质列表

    系列目录     [已更新最新开发文章,点击查看详细] 在上一篇<C#开发BIMFACE系列16 服务端API之获取模型数据1:查询满足条件的构件ID列表>中介绍了获取单文件(模型)的所有 ...

  6. C#开发BIMFACE系列18 服务端API之获取模型数据3:获取构件属性

    系列目录     [已更新最新开发文章,点击查看详细] 本篇主要介绍如何获取单文件/模型下单个构建的属性信息. 请求地址:GET https://api.bimface.com/data/v2/fil ...

  7. C#开发BIMFACE系列19 服务端API之获取模型数据4:获取多个构件的共同属性

    系列目录     [已更新最新开发文章,点击查看详细] 在前几篇博客中介绍了一个三维文件/模型包含多个构建,每个构建又是由多种材质组成,每个构建都有很多属性.不同的构建也有可能包含相同的属性. 上图中 ...

  8. C#开发BIMFACE系列21 服务端API之获取模型数据6:获取单模型的楼层信息

    系列目录     [已更新最新开发文章,点击查看详细] 一个文件/模型中可能包含多个楼层信息,获取楼层信息对于前端页面的动态展示非常有帮助.本篇介绍获取一个文件/模型中可能包含多个楼层信息的详细方法. ...

  9. C#开发BIMFACE系列24 服务端API之获取模型数据9:获取单个房间信息

    系列目录     [已更新最新开发文章,点击查看详细] 大厦建筑模型中,基本上包含多个楼层,每个楼层包含多个房间等信息.在<C#开发BIMFACE系列21 服务端API之获取模型数据6:获取单模 ...

随机推荐

  1. Spring Boot Maven 打包可执行Jar文件

    本文转载自:http://blog.csdn.net/smilecall/article/details/56288972 Maven pom.xml 必须包含 <packaging>ja ...

  2. Springboot监控之一:SpringBoot四大神器之Actuator之2--springboot健康检查

    Health 信息是从 ApplicationContext 中所有的 HealthIndicator 的 Bean 中收集的, Spring Boot 内置了一些 HealthIndicator. ...

  3. Idea项目:Failed to create a Maven project ‘…pom.xml’ already exists in VFS 解决

    在IDEA里面创建Module,因为项目类型原因删掉,又重新创建一个新的,名字没有变.于是报错: Failed to create a Maven project: '**/***/pom.xml' ...

  4. git 本地与远程分支冲突 解决

    git pull origin master git rebase origin/master git merge origin/master git rebase --continue git pu ...

  5. Whoops, looks like something went wrong

    Whoops, looks like something went wrong. 这是由于访问laravel项目报错的,解决几种可能出现的错误. 1)打开:D:\java\wamp\www\subwa ...

  6. python 之 Collections模块

    官方文档:https://yiyibooks.cn/xx/python_352/library/collections.html 参考: https://blog.csdn.net/songfreem ...

  7. Linux更换jdk版本的一些问题

    111111111111111111111111111111111111111111111111111111111111111111111111 在服务器上更新了新的 jdk,也在 /etc/prof ...

  8. openstack网络架构(nova-network/neutron)

    openstack网络体系中,网络技术没有创新,但用到的技术点非常庞杂,包括bridge.vlan.gre.vxlan.ovs.openflow.sdn.iptables等,当然这里不会做具体技术介绍 ...

  9. [Python] Argparse module

    he recommended command-line parsing module in the Python standard library 1. Basic import argparse p ...

  10. 解决oracle11g无法导出空表问题

    11G中有个新特性,当表无数据时,不分配segment,以节省空间 解决方法: 1.insert一行,再rollback就产生segment了. 该方法是在在空表中插入数据,再删除,则产生segmen ...