美文网首页我爱编程To learn Jmeter
Jmeter--多个线程组顺序执行和并行执行

Jmeter--多个线程组顺序执行和并行执行

作者: 风起帆扬了 | 来源:发表于2018-04-12 23:44 被阅读0次

本期目标: 理解Thread Groups的顺序执行与并行执行

控制因子:Run Thread Groups consecutively(i.e.one at time)

预期结论:

1、勾选 Run Thread Groups consecutively(i.e.one at time),则表示顺序执行。顺序执行,指的是测试计划中存在多个线程组时,第一个线程组执行完后再执行下一个线程组。

2、不勾选 Run Thread Groups consecutively(i.e.one at time),则表示并行执行。并行执行,指的是指的是测试计划中存在多个线程组时,所有线程组都在同一时刻执行

一、实验环境:

1、windows系统 + jmeter

2、xampp + phpwind

二、实验步骤:

a、顺序执行。

    1、设置Test Plan属性。打开jmeter:

        1.1、点击Test plan,name输入框输入:Thread Groups Test Plan

        1.2、勾选Run Thread Groups consecutively(i.e.one at time)选项

    2、添加Thread Group。

        2.1、选中Test Plan,单击鼠标右键,Add ->Threads -> Thread Group。

        2.1.1、在新添加的Thread Group 页面:

            name: First Thread Group

            Loop Count: 2

    3、 添加 HTTP request。

        3.1、选中上一步骤添加的Thread Group: First Thread Group,单击鼠标右键,Add -> Sampler -> HTTP Request

        3.2、接上一步,修改HTTP Request的信息:

            Name: tucool request

            Server Name or IP:127.0.0.1

            Port: 8022(自己搭建环境的端口号)

            Method: GET

            Path: /phpwind/upload/html/channel/tucool

            注:/phpwind/upload, 是我搭建phpwind的主页路径

    4、再次创建一个Thread Group或者直接复制后修改。

        4.1、 选中First Thread Group,并复制。

        4.2、选中Thread Groups Test Plan,并粘贴。此时会生成和First Thread Group一样名字的线程组

        4.3、单击第二个线程组:

             Name: Second Thread Group

        4.4、展开Second Thread Group,鼠标单击HTTP Request:

            Name:由tucool request 改成cms request

            Path: /phpwind/upload/index.php

            Parameters列表点击Add按钮:

                name: m

                Values: cms

    5、First Thread Group增加Think time。

        5.1、选中First Thread Group ,鼠标单击右键,点击Add Think Times to children

        5.2、点击Think time:

            Action: Pause

            Duration : 1000

        注:为啥要加Think time,是为了看效果,看啥效果呢。

    6、添加结果树。

        6.1、选中  Thread Groups Test Plan,鼠标单击右键,Add -> Listener -> View Results Tree

    7、点击start 运行,查看结果树,并记录结果。

b、并行执行Thread Groups。

    1、单击Thread Groups Test Plan,去掉勾选Run Thread Groups consecutively(i.e.one at time)选项。

    2、点击start 运行,查看结果树,并记录结果。

三、对比两次结果。

顺序执行时,结果树的执行顺序是:(loop count=2)

    tucool request[loop 1] -> tucool request[loop 2] -> cms request[loop 1] -> cms request[loop 2]

并行执行时,结果树的执行顺序是:

    首先、tucool request[loop 1] 、cms request[loop 1] (runned at on time)

    然后、cms request[loop 2] -> tucool request[loop 2]

注:如果还是想不懂的话,反复清空结果树,多执行几次,然后观察,得出自己的结论(理解透彻)。别人的结论不一定是正确的。

ps:感觉网络还行,图片又不大,就是上传图片上传不了。。。

相关文章

  • Jmeter--多个线程组顺序执行和并行执行

    本期目标:理解Thread Groups的顺序执行与并行执行 控制因子:Run Thread Groups con...

  • iOS GCD 常用功能

    获取主队列 异步执行 会开新线程 创建串行队列 开一个线程 顺序执行 1 和 2 创建并行队列 创建多个线程 ...

  • iOS 多线程-CGD

    串行队列同步执行,不开启新线程,任务按顺序执行 串行队列异步执行,会开启新线程(1个),任务按照顺序执行 并行队列...

  • 多线程 并没有那么难

    串行并行的定义 串行:一个线程中执行多个任务,只能一个一个的按照顺序执行这些任务。并行:一个进程中可以开启多条线程...

  • Swift GCD

    参考链接 主线程 串行队列 同步依次执行,在主线程依次执行 同步依次执行,在同一个线程执行 并行队列 创建多个线程...

  • 常用的GCD记录一下

    子线程并行 串行 主线程 串行队列 子线程 并行队列 子线程 栅栏函数 控制执行顺序 避免数据竞争 多线...

  • JVM-GC回收器

    垃圾回收器 by shihang.mai 0. 概念 并发:工作线程与GC线程同时执行并行: 多个GC线程同时执行...

  • swoole多线程操作

    多个任务同时执行 将顺序执行的任务,转化为并行执行(任务在逻辑上可以并行执行) 比如,我们要对已知的用户数据进行判...

  • 多线程(二)-线程同步

    一、概念 并行与并发:1个核对1个线程是并行执行,1个核对多个线程是并发执行。 线程安全:并发带来竞争,竞争的结果...

  • java多线程学习(二)

    一、并发和并行 并发是在一段时间内交替执行多个任务。并行则是在同一时间内同时执行多个任务。并行是特殊的并发。多线程...

网友评论

    本文标题:Jmeter--多个线程组顺序执行和并行执行

    本文链接:https://www.haomeiwen.com/subject/otfqkftx.html