• jmeter实现排除登录对单个事务的压测


    需求:用户登录后,会循环请求数据上报,对该请求做一个50用户的并发,并循环执行长达10分钟。循环的时候,需要排除登录的过程。

    事务:可以是一个接口,可以是一个功能,如一个web页面的访问,可以是一个请求,如循环的数据上报,这里以数据上报为例。

    思考:

    (1)使用setUp Thread Group来做登录的初始化请求,LR不就用init实现这个么?【暂未成功,可以不看,若有好的方法,敬请赐教】

    结果:因为有多个线程,cookie管理器不支持

    (2)沿用上诉方法,解决cookie管理器不支持的问题:使用BeanShell PostProcessor,__setProperty,__P函数实现token的跨线程组使用,但csv data set config 参数化上,在跨线程组间受到阻碍,如我有账号A,B,C,D,我在setUp Thread Group中使用了A,B登录,到Thread Group中真正压测的时候,参数居然从C开始取值。【该问题暂未找到办法,敬请赐教】

    (3)使用仅一次控制器,勉强实现测试需求【暂时能想到的方法,不是很满足测试需求,但暂可用】

    对登录使用仅一次控制器去限制整个执行中,就执行一次,其余接口可以循环,可以持续。使用cookie管理器控制token,这样勉强解决问题。

    (4)环境恢复(如某些需求有订单,或者有其他流程,此时测试某一个事务,测试完成后应该将环境恢复)

    使用仅一次控制器,设置定时器,延迟环境恢复接口(如取消订单)的执行时间,该执行时间要满足前面压力测试循环执行的时间,保证前面的压力测试能执行完成。

  • 相关阅读:
    Thinking in Java Reading Note(9.接口)
    Thinking in java Reading Note(8.多态)
    Thinking in Java Reading Note(7.复用类)
    SQL必知必会
    Thinking in Java Reading Note(5.初始化与清理)
    Thinking in Java Reading Note(2.一切都是对象)
    鸟哥的Linux私房菜笔记(1.基础)
    Thinking in Java Reading Note(1.对象导论)
    CoreJava2 Reading Note(2:I/O)
    CoreJava2 Reading Note(1:Stream)
  • 原文地址:https://www.cnblogs.com/Jollyxi/p/7454342.html
Copyright © 2020-2023  润新知