python自动化测试入门篇-jemter参数化
一、Jmeter参数化
1、使用用户自定义变量
用户定义的变量,引用方式:${定义参数名称};例如定义一个变量IP,使用它的时候用
${IP}.
添加一个 User Defined Variables. 选中Thread Group: 右键 Add -> Config Element -> User Defined Variables

添加一个变量ip

在http request中使用这个变量

高端配置:
A、 线程组-配置原件-用户自动化变量,添加IP变量,设置ip参数值
B、 线程组-配置原件-添加http请求默认值,在服务器名称或IP字段中引用ip变量,${ip}
C、 线程组http请求默认值以下的所有http请求中web服务器名称或ip字段可不填写
2、函数生成器
A、打开函数助手对话框(插件)
B、选择调用的函数,如-random、-time等
C、配置参数,点生成生成对应函数表达式
D、将函数表达式放入对应的参数中调用

随机数-random

在请求中使用参数

时间生成函数-time

3、从文件中读取
路径:填写绝对路径,如果放在bin目录下可以只写文件名
参数化名称:可以填写多个参数,在文本中以定义的符号分隔为多列


二、 断言
请求是否成功,通过添加断言,将返回内容与设置的内容进行比较,相同则返回成功,不同则失败。
选择HTTP Request, 右键 Add-> Assertions -> Response Assertion. 添加 Patterns To Test



添加一个Assetion Results 用来查看Assertion执行的结果.
选中Thread Group 右键 Add -> Listener -> Assertion Results.
运行后, 如果HTTP Response中没有包含期待的字符串。 那么test 就会Fail

三、 关联
关联, 就是第二个Requst, 使用第一个Request中的数据
接口测试返回的数据是json串,使用jmeter的插件json path extractor,通过key来获取value值。

通过登录接口获取sign.返回json如下:
{
"error_code": 0,
"login_info": {
"login_time": "20190325171103",
"sign": "37a935ee85ba20ab968040f8f87eafb6",
"userId": 16222
}
}
取值如下:

通过学生信息接口获取id,返回json如下:
{
"error_code": 0,
"stu_info": [
{
"id": 10056,
"name": "xx17",
"sex": "女",
"age": 28,
"addr": "上海市徐汇区",
"grade": "摩羯座",
"phone": "15911111111",
"gold": 2100
}
]
}
取值如下:

在金币充值接口中使用保存的值

在http信息头管理器中使用保存的值

python自动化测试入门篇-jemter参数化的更多相关文章
- python自动化测试入门篇-jemter连接mysql数据库
jmeter对数据库的操作主要包括以下几个步骤:1.导入mysqlde jdbc的jar包:2.创建数据库连接配置:3.线程组添加jdbc request;4.启动按钮,添加查看结果树 一.准备好驱动 ...
- python自动化测试入门篇-jemter
接口测试基础-jemter 接口文档地址:http://doc.nnzhp.cn 使用jmeter实现简单的http request的接口测试 一.get获取学生信息接口 第一步:新建一个Thread ...
- python自动化测试入门篇-postman
接口测试基础-postman 常用的接口有两种:webservice接口和http api接口. Webservice接口是走soap协议通过http传输,请求报文和返回报文都是xml格式. http ...
- 《python开发技术详解》|百度网盘免费下载|Python开发入门篇
<python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby 内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...
- python正则表达式入门篇
文章来源于:https://www.cnblogs.com/chuxiuhong/p/5885073.html Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. ...
- Python自动化测试入门必读(最新)
入门自动化测试必读 自动化测试概念 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期 ...
- Python之入门篇1
一.安装python解释器 官网: https://www.python.org/downloads/windows/ 自行下载安装,添加环境变量 #测试安装是否成功 windows --> 运 ...
- 人生苦短,我用 python 之入门篇
Python 是一种跨平台的,开源的,免费的,解释型的高级编程语言,它具有丰富和强大的库,其应用领域也非常广泛,在 web 编程/图形处理/黑客编程/大数据处理/网络爬虫和科学计算等领域都能找到其身影 ...
- python——django入门篇
要做一只有自学能力的pythoner,尽管大多数自学都是野生并不规范的,会遇到诸多坑,最后用稀奇古怪的方法解决了,但是先了解一些为以后真正学习道路填坑方便了简直不只一点点...重点来了:感觉以班里同学 ...
随机推荐
- dbgrid 无法显示表中所有字段
有时表中字段有更新,dbgrid无法显示表中字段. 解决办法: 1.adoquery断开 2. dbgrid字段全部删除 3.adoquery打开 4.dbgrid选择全部字段
- 13.0-uC/OS-III上下文切换
1.当uC/OS-III转向执行另一个任务的时候,它保存了当前任务的CPU寄存器到堆栈.并从新任务的的堆栈中CPU寄存器载入CPU.这个过程叫做上下文切换. 上下文切换需要一些开支. CPU的寄存器越 ...
- python框架之Flask(1)-Flask初使用
Flask是一个基于 Python 开发并且依赖 jinja2 模板和 Werkzeug WSGI 服务的一个微型框架,对于 Werkzeug 本质是 Socket 服务端,其用于接收 http 请求 ...
- [js]变量提升-关于条件
条件函数变量提示于全局中函数变量提升不一样. 条件中: 函数变量提升, 只是声明(现新版本浏览器中) if(g()){ function g() { return true } console.log ...
- JMeter中的正则表达式的匹配
==
- 非CI执行Allure2 trends空白问题
问题描述 未使用CI工具集成Aluure运行测试用例并生成Allure报告,多次执行后,trends是空白的,未展示出期望的趋势图 问题原因非CI工具,是通过命令 allure serve 展示报告 ...
- java之WebService
链接:https://www.jianshu.com/p/1c145315da47 WebService介绍 首先我们来谈一下为什么需要学习webService这样的一个技术吧.... 问题一 如果我 ...
- [macOS] macOS下,VirtualBox安装CentOS7.4, 搭建nginx, mysql, PHP5.6&PHP7.1
准备工作 网络设置 相关教程:http://www.jianshu.com/p/e6ba699b5992 ifcfg-enp0s3配置 TYPE=Ethernet BOOTPROTO=dhcp DEF ...
- [Android] websocket客户端开发
为了能够在H5和APP都保持同一套长连接接口,因为采用websocket协议作为开发 使用的第三方库是:https://github.com/TakahikoKawasaki/nv-websocket ...
- Gradle引人注目的特性集
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具.它使用一种基于Groovy的特定领域语言来声明项目设置,而不是传统的XML.当前其支持的语言限于Java. ...