我想在Jmeter中使用beanshellAssert查找缺少的元素

rbl8hiat  于 2022-11-09  发布在  Shell
关注(0)|答案(1)|浏览(116)

我有两个getapi,它给出的响应代码的变量之一是id
因此,我使用Jason提取器提取了名为id 1和id 2的两个api的id
我已经使用bean shellAssert来比较这两个id
数据是这样的:
id 1:{abc,qwe,ert,yup,iop,bnm,dff}等等
id 2:{qwe,ert,iop,bnm,dff}像这样,存在数百个数据
有没有办法在使用beanshellAssert比较两个ID后只打印缺少的数据,如果有,请帮助我。

c7rzv4ha

c7rzv4ha1#

从JMeter 3.1开始,建议使用JSR223测试元素和Groovy语言编写脚本,因此我不打算用Beanshell“帮助您”,而是提供一个基于Groovy的解决方案。
示例代码:

def id1 = org.apache.commons.lang.StringUtils.substringBetween(vars.get('id1'), '{', '}').split(',').collect()
def id2 = org.apache.commons.lang.StringUtils.substringBetween(vars.get('id2'), '{', '}').split(',').collect()

def missing = org.apache.commons.collections.CollectionUtils.disjunction(id1, id2)

和演示:

更多信息:Scripting JMeter Assertions in Groovy - A Tutorial

相关问题