测试工具之Jmeter(创建一个简单测试用例)
前面介绍了如何使用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为正常):
重新执行一下,通过。如果这里随便填个,可能就会执行失败
测试工具之Jmeter(创建一个简单测试用例)的更多相关文章
- Jmeter创建一个简单的http接口用例
1.新建线程组 添加->Threads(Users)->线程组 线程组用来模拟用户进程. 2.添加http信息头管理器 添加->配置元件->http信息头管理器 Systemi ...
- Jmeter初步使用二--使用jmeter做一个简单的性能测试
经过上一次的初步使用,我们懂得了Jmeter的安装与初步使用的方法.现在,我们使用Jmeter做一个简单的性能测试.该次测试,提交的参数不做参数化处理,Jmeter各元件使用将在介绍在下一博文开始介绍 ...
- 使用 CodeIgniter 创建一个简单的 Web 站点
原文:使用 CodeIgniter 创建一个简单的 Web 站点 参考源自: http://www.ibm.com/developerworks/cn/web/wa-codeigniter/index ...
- 一个先进的App框架:使用Ionic创建一个简单的APP
原文 http://www.w3cplus.com/mobile/building-simple-app-using-ionic-advanced-html5-mobile-app-framewor ...
- 如何创建一个简单的Visual Studio Code扩展
注:本文提到的代码示例下载地址>How to create a simple extension for VS Code VS Code 是微软推出的一款轻量级的代码编辑器,免费,开源,支持多种 ...
- 《Entity Framework 6 Recipes》翻译系列 (3) -----第二章 实体数据建模基础之创建一个简单的模型
第二章 实体数据建模基础 很有可能,你才开始探索实体框架,你可能会问“我们怎么开始?”,如果你真是这样的话,那么本章就是一个很好的开始.如果不是,你已经建模,并在实体分裂和继承方面感觉良好,那么你可以 ...
- ADF_General JSF系列1_创建一个简单的JSF Application
2015-02-17 Creatd By BaoXinjian
- IntelliJ IDEA 15 部署Tomcat及创建一个简单的Web工程
一.部署Tomcat 二.创建一个简单的Web工程 2.1创建一个新工程 创建一个新工程 设置JDK及选择Web Application (创建的是Web工程) 点击Next,选择工作空间,起个工程名 ...
- 用django创建一个简单的sns
用django创建一个简单的sns 1.首先创建一个工程newsns django-admin.py startproject newsns 在工程目录下新建一个文件夹templates,在该文件夹下 ...
随机推荐
- 2. Go变量(Variables)
变量是什么,变量的命名规则,以及一些关于变量的基础没有必要再说了,我想学习Go语言的有很多都是从其他语言转过来的,那我们直接进入正题. 声明一个变量: var age int 给变量赋值: age = ...
- 使用安装脚本安装Texlive
介绍 TeX Live 是 TUG (TeX User Group) 维护和发布的 TeX 系统,可说是「官方」的 TeX 系统.网上可找到的教程大多是从镜像安装完整版texlive.镜像发布的周期较 ...
- 关于java中分割字符串
例子:String path = "123.456.789"; 如果要使用“.”将path分割成String[], path.split("//."); or ...
- Android自定义View之上拉、下拉列表 头部元素跟随 缩放、平移效果的实现
滑动ListView列表然后 listView上边的视图 跟随着上拉或者下拉的距离 自动放大或者缩小 视图里边元素自动平移的效果 思路很简单 根据listView 的滑动距离去计算图片和文字应该平移 ...
- MySQL开发——【字段类型、约束】
创建数据表 基本语法: create table 数据表名称( 字段名称 字段类型 字段约束, ... )[表选项]; 字段类型 整数型 ,有符号型,可以表示 ,有符号型,可以表示 mediumint ...
- UNION 和 UNION ALL 操作符
SQL UNION 操作符 1.UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意:UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时 ...
- playframework链接MySQL数据库的问题
Scala 在米国已经发展的如火如荼,有些人甚至说Scala将成为未来语言的头号交椅.简洁的代码和表达式的写法让很多人倍感舒适,函数式和面向对象的编程范式也让其能在多种场合游刃有余的被使用.加之它是跑 ...
- exception is java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make su re that file is correct.
spring cloud 项目使用maven 打包报错“No auto configuration classes found in META-INF/spring.factories” 在pom.x ...
- 包含复杂函数的excel 并下载
POI 版本: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</a ...
- MySQL 三 通过yum源安装指定版本的mariadb
1.yum源安装指定的版本 1)准备工作 下载安装当前次新版 https://downloads.mariadb.org/ 选择rpm包,点击Repository Config ...