测试计划的Element们

测试计划属性配置有一个checkbox选项"Functional Testing",如果选中,Jmeter会记录从服务器返回的data到每个sample中。如果有选中一个listener,这个data会被写入file。这个在运行验证JMeter是否配置正确很有用,服务器有返回预期的值。结果是file会快速的变得非常笨重,JMeter的性能就会变差。如果在测试压力测试,该选项应该关闭,不选中。

线程组 Thread Group

线程组是所有测试计划的根节点,所有的controller和sample都要在Thread Group下,其它的elements,如listener必须直接放在test plan下面,保证能作用于所有的thread group。

thread group允许你:

  1. 设置线程的数量
  2. 设置过渡时期
  3. 设置执行测试的次数

每个线程将执行完整的测试计划,完全独立于其他测试线程。多线程用于模拟并发连接到您的服务器应用程序。

过渡时期ramp-up:所有线程完成所需要的时间,如果一共有10个线程,ramp-up的时间设置为100秒,每个线程10秒的运行时间。过渡需要足够长的时间,以避免太大工作量的一个测试。

控制器Controller

包括Samplers Controller采样器和Logical Controllers逻辑控制器,这两个驱动测试的处理。

1 Samplers Controller采样器

告诉JMeter向服务器发送一个请求然后等待响应。他们按照在tree中出现的顺序执行。

例如:添加一个HTTP Request Sampler发送一个HTTP请求. 您还可以定制一个请求通过添加一个或多个取样器的配置元素。

包括以下Samplers:

  1. FTP Request
  2. HTTP Request
  3. JDBC Request
  4. Java object request
  5. LDAP Request
  6. SOAP/XML-RPC Request
  7. WebService (SOAP) Request

每个sampler都有几个属性需要设置,您可以进一步定制一个取样器通过添加一个或多个配置元素到测试计划。

如果你要发送多个相同类型的请求(例如,HTTP请求)到同一台服务器上,考虑使用一个默认的配置Element。每个控制器都有一个或多个默认Element。

记得添加一个侦听器到您的测试计划来查看你的请求和/或将结果存储到磁盘上。

如果你有兴趣让JMeter在响应你的请求时执行基本的验证,添加一个assertion到sampler。例如,压力测试一个web app,服务器返回"HTTP Response" code,页面可能有错误或缺失的部分。您可以添加assert检查特定的HTML标记,常见的字符串错误,等等。JMeter允许使用正则表达式创建assert。

2 Logical Controllers逻辑控制器

逻辑控制器决定何时发送请求. 例如,你可以添加一个交错逻辑控制器交替采样两个HTTP请求。

逻辑控制器可以改变来自他们的子元素的请求顺序。他们可以修改请求,使JMeter重复请求,等等。

要了解逻辑控制器在测试计划的影响,思考以下的测试树:

  • Test Plan
    • Thread Group
      • Once Only Controller
        • 登录请求 (an HTTP Request)
      • Load Search Page (HTTP Sampler)
      • Interleave Controller
        • Search "A" (HTTP Sampler)
        • Search "B" (HTTP Sampler)
        • HTTP default request (Configuration Element)
      • HTTP default request (Configuration Element)
      • Cookie Manager (Configuration Element)

1.第一件事是执行登录请求。后续的迭代将跳过该请求,因为Once Only Controller只执行一次。

2.在登录之后,下一个sampler加载搜索页面(想象一个web应用程序,用户登录后,然后去一个搜索页面做一个搜索)。这只是一个简单的请求,无任何逻辑控制器过滤逻辑。

3.加载搜索页面后,我们要做一个搜索。实际上,我们想做两种不同的搜索,我们想重新加载页面来搜索这两个页面。我们可以做这个通过4简单的HTTP请求Element(加载搜索页面,搜索“A”,加载搜索页面,搜索“B”)。我们使用interleave Controller一次传递一个child request。

时间: 2024-09-30 18:57:49

测试计划的Element们的相关文章

创建一个Web测试计划

学习创建基本的Test Plan来测试web网站,将会创建5个用户向两个页面发送请求.每个测试需要运行两遍. 所以,总共的HTTP请求数 = 5(用户数) x 2 (2个请求) x  2 (重复发送2次) => 20个HTTP请求 构建测试计划,你会用到下面的elements: Thread Group HTTP Request HTTP Request Defaults Graph Results 1 添加用户 添加Thread Group 第一步需要添加一个Thread Group(线程组)

创建数据库测试计划

建立一个测试计划测试数据库服务器. 您将创建50个用户2 SQL请求发送到数据库服务器.重复该些测试100次. 总的请求数= 50 x 2 x 100 = 10'000 JDBC requests 构建这个测试计划,你需要用到下面的elements: Thread Group, JDBC Request, Summary Report. 下面的例子使用了MySQL数据库驱动程序.使用这个driver,他包含.jar文件 (例如:mysql-connector-java-X.X.X-bin.jar

四:建立高级web测试计划

发送带有Header的请求 参考:http://jmeter.apache.org/usermanual/build-adv-web-test-plan.html#header_manager Jmeter里面管理发送的请求的header使用 HTTP Header Manager.使用它可以添加或重写各种header属性,比如"User-Agent", "Pragma", "Referer"等等. 添加HTTP Header Manager方法

创建测试计划

测试计划描述了一系列当 JMeter运行时需要执行的步奏. 一个完整的测试计划由一个或者多个线程组,逻辑控制器,取样器,监听器,定时器,assertion,配置,组成. 1.添加删除element 添加element: 右键tree中的某个节点->Add,或者,File -> open,或者,File -> merge 删除element:右键某个元素后,点击删除按钮. 2.load和保存element 从file中load element:右键tree node -> file

jmeter --- 测试计划里的元件

1.线程组 线程组元件是任何一个测试计划的开始点.在一个测试计划中的所有元件都必须在某个线程组下.顾名思义,线程组元件控制JMeter执行你的测试计划时候使用的线程数量.对线程组的控制允许你: 设置线程数 设置ramp-up period 设置测试要执行的次数 每个线程将会完全独立的运行测试计划,互不干扰.多个线程用于模仿对服务器的并发访问. ramp-up period指示JMeter用于达到全部选择的线程的时间.如果选择了10个线程,并且ramp-up period是100秒,那么JMete

创建WEB测试计划

1.添加线程组测试原件,给出发送请求的频率和数目. 选中测试计划,单击鼠标右键,在弹出的快捷菜单中选择--add--Threads(users)--ThreadGroup 继续:如果取样器里的执行出现错误失败的时候,请求不会停止,继续执行. Start Next Thread Loop : 忽略错误,线程当前循环错误,执行下一个循环. 停止线程 : 只限当前线程停止,不影响其他线程执行 停止测试 : 当前执行的线程全部执行完毕后结束 Stop Test Now: 立刻停止 设置线程数 :设置线程

215. Kth Largest Element in an Array

Find the kth largest element in an unsorted array. Note that it is the kth largest element in the sorted order, not the kth distinct element.For example,Given [3,2,1,5,6,4] and k = 2, return 5.Note:You may assume k is always valid, 1 ≤ k ≤ array's le

测试计划的编写

描述软件测试努力的目标,范围,方法和焦点的文档.测试用例:指对一项特定的软件产品进行测试任务的描述,体现测试方案.方法.技术和策略.内容包括测试目标.测试环境.输入数据.测试步骤.预期结果.测试脚本等,并形成文档.2.        测试计划的内容(1)        标题(2)        确定软件的版本号(3)        修订文档历史,包括作者,日期和批示(4)        目录表(5)        文档的目的和适合的读者群(6)        测试的目的(7)        软件

LeetCode OJ 162. Find Peak Element

A peak element is an element that is greater than its neighbors. Given an input array where num[i] ≠ num[i+1], find a peak element and return its index. The array may contain multiple peaks, in that case return the index to any one of the peaks is fi