zoukankan      html  css  js  c++  java
  • 性能测试基础---LR运行设置

    ·LR的运行时设置(Runtime settings):

    ·Run Logic:该选项是用来控制脚本的真正的运行逻辑。
    ·该选项会把脚本中的函数分别放入三个运行模块中:Init、Run、End
    ·默认情况下,vuer_init函数会放在Init部分、vuser_end会放在End部分。其他acthon函数会按原始顺序放入Run部分。
    ·执行逻辑:LR会按顺序依次执行Init、Run和End这三个模块。
    ·其中Init和End模块在每一个虚拟用户(线程或者进程)的生命周期中只会执行一次;Run模块是可以执行多次,次数由迭代次数(Number of iterations)或者持续时间(Duration)决定。
    ·迭代:iteration,在LR中,迭代是指Run部分的脚本完整的执行一次。即Run一次就是迭代一次。

    ·Pacing:该选项是用来设置两次迭代之间的间隔时间的。
    一般来说,用得很少。它的作用和思考时间的作用极其接近。都是用来控制负载的。


    ·Log:日志选项。
    ·日志的作用:记录信息、帮助调试。

    ·日志的需求级别:调试比最终运行所需要的日志信息更多。

    ·日志的开启,本身会影响到最终的性能测试的结果。


    ·Think Time:思考时间选项。
    在LR中,思考时间的实现是由:函数(Vugen中添加)和设置(Vugen或者Controller中设置)组合来实现。
    在LR中,思考时间是不会影响到脚本的运行逻辑的。


    PS:默认情况下,在vugen中,日志默认是always,思考时间是不开启;在Controller中,日志会自动变为error级别,思考时间会自动变成开启。

    ·Miscellaneous:杂项
    这里会涉及到LR对于虚拟用户的实现方式的设置。
    ·Run Vuser as a thread:线程模式,是默认方式。即通过线程的方式去模拟实现虚拟用户,即一个线程就是一个虚拟用户。
    ·Run Vuser as a process:进程模式。即通过进程的方式去模拟实现虚拟用户,即一个进程就是一个虚拟用户。

    PS:进程和线程都是操作系统中的概念,是操作系统运行任务的两种方式。
    线程必须位于一个进程中,一个进程至少包含一个线程,可以包含多个线程。
    在LR中,不论线程模式还是进程模式,运行虚拟用户的进程名都叫mmdrv.exe
    默认情况下,使用线程模式,一个mmdrv.exe进程最多可以包含50个线程。即一个mmdrv.exe进程可以模拟50个虚拟用户。
    在LR中,不同用户组的虚拟用户是不能共用一个进程的。

    总结:线程模式的优点是节约资源。
    从理论上来说,建议使用进程模式。现实中还是使用线程模式居多。

    ·Speed Simulation:带宽模拟
    注意的是带宽的单位和吞吐量(throughput数据流量)的单位的区别。
    带宽单位是bit
    数据单位是byte。
    1byte=8bit

    ·Browser Emulation:
    注意事项:主要是要知道根据不同的测试需求去决定是否勾选Clear Cache选项。

    默认情况下,LR是勾选的。。因为LR始终认为性能测试是一种悲观的测试。

  • 相关阅读:
    Java实现 LeetCode 657 机器人能否返回原点(暴力大法)
    PHP imagearc
    PHP imageantialias
    PHP imagealphablending
    PHP imageaffinematrixget
    PHP imageaffinematrixconcat
    空单元 | empty-cells (Miscellaneous Level 2)
    矩阵 | matrix() (Transforms)
    相邻兄弟选择器 | Adjacent sibling selectors (Selectors)
    相抵路径 | offset-path (Motion Path)
  • 原文地址:https://www.cnblogs.com/wendy-0901/p/11724684.html
Copyright © 2011-2022 走看看