• 0
  • 0
分享

接上文,下面继续介绍Jmeter的测试元件。


1.定时器

 

        默认, JMeter线程发送出的每个请求是不间断的。我们建议你通过添加一个可用的定时器到你的线程组里来指定延迟时间。如果你不添加延时,JMeter可能在较短的时间内发送大量的请求致使你的服务器瘫痪。

 

        定时器将导致JMeter在线程组里,在每个请求间,延迟一定时间。

 

        如果你想在一个线程组里添加一个以上的定时器,JMeter会在执行你所应用的那个取样器之前累加所有的计时器,然后以累加后的时间来做停顿。

 

2.断言

 

        断言允许你判断从被测的服务器端接收到的响应的实际情况。使用断言,你能“根本上测试”你的应用返回的是你预期的结果。

 

        例如,你可以断言对查询的响应将包含某些特定的文本。你指定的文本可以是Perl样式的正则表达式,并且可以指示响应包含文本,或者它应该与整个响应匹配。

 

        你可以添加断言到任意一个取样器里,例如,你可以添加断言到一个HTTP请求来检查文本“</HTML>”。JMeter会检查这个文本是否在HTTP响应里,如果JMeter找不到,它将把这个请求标记为“失败的请求”。

 

        注意,断言适用于其范围内的所有采样器。要将断言限制为单个采样器,请将断言添加为采样器的子级。


        要查看断言结果,请将断言侦听器添加到线程组。失败的断言也将显示在树视图和表侦听器中,并将计入错误%age,例如在聚合和摘要报告中。


3.配置元件

 

        配置元件工作和取样器很接近,尽管它不能发送请求(HTTP代理服务器除外),它可以补充或修改请求。

 

        只有在你放置元件的树分支里面,才能访问配置元件。例如,如果你把HTTP Cookie管理器放在一个简单逻辑控制器里,那么只有你放在简单逻辑控制器里的HTTP请求控制器才能访问这个Cookie管理器(见下图)。“网页1(Web Page 1)”和“网页2(Web Page 2)”可以访问这个Cookie管理器,但“网页3(Web Page 3)”则不行。

 http-config-example.png

并且,在树分支里的配置元件比在父级分支同样的元素有更高的优先权。例如,我们定义两个HTTP默任请求元件“默认网页1”和“默认网页2”。因为我们把“默认网页1”放在循环控制器里,只有“网页2”可以访问它。因为我们把它放在线程组里,其它HTTP请求将使用“默认网页2”。

 

4.前置处理器

 

        前置处理器在取样器请求前执行一些操作。如果前置处理器附有取样器元件,那么它将先于这个取样器元件执行。前置处理器最常用于在样本请求运行之前修改其设置,或更新未从响应文本中提取的变量。有关何时执行前置处理器的详细信息,请参阅作用域规则。

 

5.后置处理器

 

        后置处理器在取样器请求后执行一些操作。如果后置处理器附有取样器元件,它将在那个取样器元件运行之后运行。后置处理器多用于处理响应数据,通常用于从中提取值。有关执行后置处理器的详细信息,请参阅作用域规则。


6. 执行顺序


  1. 配置元素

  2. 前置处理器

  3. 计时器

  4. 取样器

  5. 后置处理器(除非取样结果为空)

  6. 断言(除非取样结果为空)

  7. 监听器(除非取样结果为空)

         

        请注意,计时器、断言、前置处理器和后置处理器仅在有取样器应用时才被处理。逻辑控制器和取样器按照它们在树中出现的顺序进行处理。根据发现其他测试元素的范围和测试元素的类型来处理其他测试元素。[在同一种类型中,元素按照它们在树中出现的顺序进行处理]。


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 虽然现在 Git 已经很普及,但是我相信用 SVN 的公司仍然不少,那么作为 SVN 配置管理员的话,就不可避免的涉及到账号维护的问题,今天我们就说说如何通过 Python 脚本实现用户的快捷维护。 如果手动维护用户,一般需要三个步骤:1.手动添加用户2.手动设置属组3.通知用户设置结果 使用脚本后也是三步,但是效率却大大提升:1.输入用户名2.输入要设置的组名3.按下回车,搞定 这里面设置用户和属组是关键点,也是我们需要自动化起来的操作,下面分别给出实现的代码: def add_user(user_name): """如果用户不存在则调用htpasswd.exe添加用户""" ...
            1 2 2455
            分享
          • 新浪科技讯北京时间11月14日上午消息,据报道,多年来科技巨头们一直支撑着美国股市,它们的股价连连创下新高,但是2022年美国股市突然不行了,于是科技巨头也就没有那么风光了。尽管上周美国股市出现反弹,今年苹果、微软、亚马逊、谷歌母公司Alphabet、Meta的市值总和还是损失了超3万亿美元。这主要是因为营收增速放缓,利率上升。2020年9月5家公司的市值在标普500指数中占比达到24%,创历史新高,现在降到了19%。美联储退出宽松政策,股市已经发生了很大的变化。就在科技企业影响力退潮时,传统行业却在前进,能源和银行等行业在标普500指数中占据了更大的份额,埃克森美孚和富国银行都因为高油价或者...
            0 0 963
            分享
          • 一、软件测试的生命周期(软件测试的流程是什么?)需求分析——测试计划——测试设计/开发——测试执行——测试评估需求分析对需求进行合理化筛选,分析需求对需求明确细化测试计划: 测试进行的人员、时间、测试范围、测试目的等具体进行计划测试设计/开发: 根据需求提炼出的功能点开发测试用例测试执行 执行测试用例 找BUG 回归测试测试评估 评估本次测试的情况二、如何描述一个BUG?首先BUG就是和需求分析说明书中不匹配的功能,我们在实际测试中就需要将测出来的BUG记录在BUG管理工具(禅道,tapd,jira)里,以便开发人员查看,为了能让开发人员更能清楚的了解到BUG,我们就要规范书写BUG,包含以下...
            0 0 1498
            分享
          • 近10年,技术迭代最为迅速,彻彻底底改变了人类社会的生活方式,中国互联网从无到有,发展迅猛。互联网用户量激增,已由原来的4增长至8亿+。面对当下的局势,用户体验自然就成为了互联网产品面临的最大考验。分析近年来的系统崩溃翻车事故,得出结论:性能是影响用户体验的最重要因素。一、什么是性能测试?通俗来说:利用性能测试工具或者代码对系统的相关性能指标进行的测试,用来评估系统的性能二、为什么做性能测试?性能测试是互联网+企业的“刚需”企业规模越大,性能瓶颈越明显,性能测试至关重要!性能挑战:业务复杂度提升数据级日渐庞大实时性要求提高并发压力越来越高应用面越来越广 三、功能测试与性能测试四、怎么...
            0 0 1013
            分享
          •   对于测试人员、开发人员来说,善用抓包工具确实是快速分析和定位问题的一大必备神技,现将配置过程记录如下:  1、打开jmeter后,首先添加一个线程组:  2、线程组可以重新命名按项目名称分类:  3、然后在工作台里添加一个代理服务器,把你的电脑做为一个代理服务器。  4、然后配置代理服务器,选择目标控制器,选择你要录制的线程组,比如说这里我选择的就是测试项目。然后点击启动就可以了,其他的配置可以先不管。  4.1 这里重点说明一下,要在HTTP代理服务器下增加一个查看结果树,这样抓到的接口地址、请求参数、返回数据才能够完整显示出来,才能够分析问题,有很多文章都没有说明这一点,其实就只是一个...
            0 0 2153
            分享
      • 51testing软件测试圈微信