一、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参数化的更多相关文章

  1. python自动化测试入门篇-jemter连接mysql数据库

    jmeter对数据库的操作主要包括以下几个步骤:1.导入mysqlde jdbc的jar包:2.创建数据库连接配置:3.线程组添加jdbc request;4.启动按钮,添加查看结果树 一.准备好驱动 ...

  2. python自动化测试入门篇-jemter

    接口测试基础-jemter 接口文档地址:http://doc.nnzhp.cn 使用jmeter实现简单的http request的接口测试 一.get获取学生信息接口 第一步:新建一个Thread ...

  3. python自动化测试入门篇-postman

    接口测试基础-postman 常用的接口有两种:webservice接口和http api接口. Webservice接口是走soap协议通过http传输,请求报文和返回报文都是xml格式. http ...

  4. 《python开发技术详解》|百度网盘免费下载|Python开发入门篇

    <python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby  内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...

  5. python正则表达式入门篇

    文章来源于:https://www.cnblogs.com/chuxiuhong/p/5885073.html Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. ...

  6. Python自动化测试入门必读(最新)

    入门自动化测试必读 自动化测试概念 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期 ...

  7. Python之入门篇1

    一.安装python解释器 官网: https://www.python.org/downloads/windows/ 自行下载安装,添加环境变量 #测试安装是否成功 windows --> 运 ...

  8. 人生苦短,我用 python 之入门篇

    Python 是一种跨平台的,开源的,免费的,解释型的高级编程语言,它具有丰富和强大的库,其应用领域也非常广泛,在 web 编程/图形处理/黑客编程/大数据处理/网络爬虫和科学计算等领域都能找到其身影 ...

  9. python——django入门篇

    要做一只有自学能力的pythoner,尽管大多数自学都是野生并不规范的,会遇到诸多坑,最后用稀奇古怪的方法解决了,但是先了解一些为以后真正学习道路填坑方便了简直不只一点点...重点来了:感觉以班里同学 ...

随机推荐

  1. dbgrid 无法显示表中所有字段

    有时表中字段有更新,dbgrid无法显示表中字段. 解决办法: 1.adoquery断开 2. dbgrid字段全部删除 3.adoquery打开 4.dbgrid选择全部字段

  2. 13.0-uC/OS-III上下文切换

    1.当uC/OS-III转向执行另一个任务的时候,它保存了当前任务的CPU寄存器到堆栈.并从新任务的的堆栈中CPU寄存器载入CPU.这个过程叫做上下文切换. 上下文切换需要一些开支. CPU的寄存器越 ...

  3. python框架之Flask(1)-Flask初使用

    Flask是一个基于 Python 开发并且依赖 jinja2 模板和 Werkzeug WSGI 服务的一个微型框架,对于 Werkzeug 本质是 Socket 服务端,其用于接收 http 请求 ...

  4. [js]变量提升-关于条件

    条件函数变量提示于全局中函数变量提升不一样. 条件中: 函数变量提升, 只是声明(现新版本浏览器中) if(g()){ function g() { return true } console.log ...

  5. JMeter中的正则表达式的匹配

    ==

  6. 非CI执行Allure2 trends空白问题

    问题描述 未使用CI工具集成Aluure运行测试用例并生成Allure报告,多次执行后,trends是空白的,未展示出期望的趋势图 问题原因非CI工具,是通过命令 allure serve 展示报告 ...

  7. java之WebService

    链接:https://www.jianshu.com/p/1c145315da47 WebService介绍 首先我们来谈一下为什么需要学习webService这样的一个技术吧.... 问题一 如果我 ...

  8. [macOS] macOS下,VirtualBox安装CentOS7.4, 搭建nginx, mysql, PHP5.6&PHP7.1

    准备工作 网络设置 相关教程:http://www.jianshu.com/p/e6ba699b5992 ifcfg-enp0s3配置 TYPE=Ethernet BOOTPROTO=dhcp DEF ...

  9. [Android] websocket客户端开发

    为了能够在H5和APP都保持同一套长连接接口,因为采用websocket协议作为开发 使用的第三方库是:https://github.com/TakahikoKawasaki/nv-websocket ...

  10. Gradle引人注目的特性集

    Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具.它使用一种基于Groovy的特定领域语言来声明项目设置,而不是传统的XML.当前其支持的语言限于Java. ...