前面介绍了如何使用badboy录制jmeter脚本,以及如何导入脚本并进行测试

这里介绍下手动创建测试用例,主要步骤如下:

1、创建线程组

第一次打开Jmeter只有一个测试计划,右键“测试计划”选择“添加” -> “Threads” -> “线程组”,即可得到如下配置界面:

名称:即这个线程组的名字

注释:对这个线程组的注释

在取样器执行错误后的操作:根据需要勾选后续执行情况,一般都会选择继续

线程数:即总的测试次数(模拟的用户操作)

Ramp-up period:执行完所有线程数所用的时间,比如线程数为100,执行时间设置为20秒,那么每秒应该会增加5个用户操作。

  如果没有指定时间,则Jmeter会立即建立所有线程(启动所有线程数的用户操作)

循环次数:表示这个线程组需要执行多少个循环,如果选择“永远”,那就一直执行下去,除非手动停止

Delay Thread Creation until needed:看了官方的解释和自己实际应用,意思应该如下:

  当线程需要执行的时候,才会被创建。如果不选择这个选项,那么,在计划开始的时候,所有需要的线程就都被创建好了

调度器:勾选后,下面的“调度器配置”就可以填写相关信息

调度器配置.持续时间:即每个线程执行的时间,即模拟用户的在线时长

调度器配置.启动延时:即这个测试用例在开始后多长时间开始执行

调度器配置.启动时间:测试计划开始后,在什么时间开始执行。开始执行后还是会有上面的启动延时存在(如果启动延时配置了)

调度器配置.结束时间:测试计划结束的时间,到时间后,会停止所有线程

2、创建取样器

在取样器中选择“http请求”,并配置访问baidu网页,如下:

名称:给取样器取个名字

注释:对取样器进行注释

Basic.Web服务器.服务器名称或IP:这里填写百度网址即可

Basic.Web服务器.端口号:http默认端口号80,如果是其他自定义的端口,直接填写即可

Basic.Web服务器.Timeouts.Connect:连接超时时间

Basic.Web服务器.Timeouts.Response:响应超时时间

Advanced.Embedded Resources  from HTML Files:如果勾选了,则会下载所有资源

Advanced.Source Address:一般用于IP欺骗(Implementation为HTTPClient有效)

Basic.HTTP请求.Implementation:默认是HttpClient4

Basic.HTTP请求.协议:根据实际情况填写。这里填http

Basic.HTTP请求.方法:get。方法有很多,一般用得比较多的是get和post

Basic.HTTP请求.Content encoding:编码方式

Basic.HTTP请求.路径:域名后面部分。这里我们访问的是百度首页,不用填写

Basic.HTTP请求.自动重定向:只支持GET,HEAD方法。 如果请求有重定向的话,会只显示终的结果,Jmeter 不会显示重定向的过程

Basic.HTTP请求.跟随重定向:与“自动重定向”之前只能选择一个。如果请求有重定向的话, Jmeter 会显示重定向的过程

Basic.HTTP请求.Use Keep Alive:直接勾选即可

Basic.HTTP请求.Use multipart/form-data for HTTP POST:当需要上传文件时需要勾选

Basic.HTTP请求.Browser-compatible headers:当勾选了Use multipart/form-data for HTTP POST后,可以选择这个,

  可以保证不受HTTP信息头管理器设置的Content-Type 和Content-Transfer-Encoding 影响

Basic.HTTP请求.Parameters:http消息请求的参数。参数值包含特殊字符比如’&’,jmeter会自动转义为’%26’

Basic.HTTP请求.Body:使用文本形式发送请求参数。一般是json或xml

Basic.HTTP请求.Files Upload:文件名称: 要上传的文件,包括路径 2. 参数名称: 请求参数名称 3. MIME类型:MIME type (for example, text/plain)

Basic.Proxy server:代理服务器设置

这样测试用例就写好了,可以执行了,执行完成后,点击下面红框(或菜单“选项” -> Log Viewer)可以显示执行日志:

这里没看出报错,我们再添加监听器(查看结果树),再执行以下,看到报错了:

看报错信息,Jmeter把我们设置的网址又加了一个http://,也就是Jmeter不需要我们去加这个头,我们直接去掉再测试一遍:

这时候看到正常了~,一个简单的测试用例就完成了,这里我们也可以加个断言,判断响应返回码是否为正确的(200为正常):

重新执行一下,通过。如果这里随便填个,可能就会执行失败

最新文章

  1. 3ds max画曲线 设置摄像机的起始位置
  2. Android--JUnit单元测试
  3. 动态WebService方法
  4. VS2005调试时无法找到调试信息解决方法
  5. ES5数组方法
  6. Oracle创建主键自增表
  7. 【转】从底层了解ASP.NET体系结构
  8. 【LaTeX排版】LaTeX论文排版<三>
  9. 显示ubuntu 10.4右上角网络图标
  10. Jquery Live方法
  11. 堆溢出学习笔记(linux)
  12. BZOJ.5092.[Lydsy1711月赛]分割序列(高维前缀和)
  13. Lesson 02-Linux基础命令(一)
  14. Ajax2简单的使用方式
  15. tcp黏包
  16. bimgotoblock-BIM要上区块链
  17. layer loading层 的设置
  18. OS memory
  19. flink ha zk集群迁移实践
  20. 洛谷 P1854 花店橱窗布置 【dp】

热门文章

  1. 根据文件夹更改样本文件名小程序.py
  2. python爬虫小说代码,可用的
  3. SVD及其在推荐系统中的作用
  4. Linux基础知识回顾及BASH学习
  5. Linux云服务器
  6. 249. Group Shifted Strings把迁移后相同的字符串集合起来
  7. LAB2
  8. Python爬虫项目--爬取链家热门城市新房
  9. python的配置
  10. drf3 Serializers 序列化组件