1.接口测试

接口测试的内容我们之前已经讲过,values-key形式和json串传参形式;

包括的协议有http,webservice(soap),jdbc数据库,java请求

2.参数化

定义:把固定的一个值,变成动态、可变的数组,把数组的值进行值传递。数组大小可控制。

1)使用函数助手的_random函数进行参数化设置;

2)使用配置原件CSV Data Set Config进行参数设置;

策略:

Sharing mode:参数化取值策略

All threads                                唯一+每次迭代

Current thread group                  基于每个线程组下的唯一+迭代取值(不同线程组是顺序取值,一个线程组是唯一取值)

Current thread                            顺序+每次迭代   如果多线程之间值是重复的,那么就是顺序,每个线程之间没有重复,就是唯一

3.为什么参数化

1)数据库校验字段值的唯一性。(数据库修改字段的唯一性,可避免参数化)

2)应用程序不允许用一个值反复操作。(开发调整不允许一个值反复操作,可避免参数化)

3)避免数据库的查询缓存,保证测试结果的真实性。(数据库在执行一条SQL查询操作时,先进行语法检查、语义分析(写法是否正确、表是否存在、是否有权限),生成执行计划,按执行计划做查询操作,如果查询的数据在数据库内存,返回数据;如果不在内存,需要从硬盘里把数据放到硬盘,返回数据,同时会缓存这条SQL的执行计划和结果。如果同样的查询操作,就直接在查询缓存里返回)(数据库关掉缓存,可避免参数化)

3.关联

定义:将服务器返回的、动态的、变化的值,把它保存为一个参数,以便后面需要使用这个参数的地方进行使用

1)使用后置处理器正则表达式提取器

2)json实现,在body Data中输入json入参

4.为什么关联

1)服务器校验该值的合法性;

例子:session、cookie、token、时间戳(formhash等)、验证码(图片验证码、短信验证码、邮箱验证码等)等等。验证码(①.自己写JS,解析图片,获取验证码;②.改成万能验证码)。请求成功不代表业务测试成功,要注意看回放页面是否有报错。

2)数据库,后续需要对该值进行增删改查操作。(一定是int类型的数字)

例子:insert操作            插入的值需要与其他表的数据建立关联关系/对应关系,需要进行关联。

delete操作           看请求里非手动输入的ID有多少个即可确认是否需要做关联。

update操作          where条件

select操作            where条件

5.压力测试

1)首先接口脚本需要调试成功(增加断言,查看结果树等);

2)设置压力测试场景,可加远程负载机,设置并发,时间段;

3)添加聚合报告,运行场景,观察TPS,RT,并发,根据研发需求而评定,也可以使用2/8原则

6.上传文件

使用filed upload上传文件即可。

jmeter进行的接口测试和压力测试的更多相关文章

  1. JMeter接口测试和压力测试

    JMeter接口测试和压力测试 JMeter可以做接口测试和压力测试.其中接口测试的简单操作包括做http脚本(发get/post请求.加cookie.加header.加权限认证.上传文件).做web ...

  2. Jmeter连接SqlServer数据库进行压力测试

    Jmeter连接SqlServer数据库进行压力测试 前提准备:先安装jdbc驱动 驱动下载链接地址:http://pan.baidu.com/s/1bpDpjSr 密码:v6tn 下载解压之后,讲s ...

  3. 利用jmeter对WebRTC应用进行压力测试(java)

    利用jmeter对WebRTC应用进行压力测试(java) 说明:WebRTC是一款开源的多人即时视频API,与一般的http请求不同,webrtc应用实际压力主要是码流 最近负责了一个WebRTC的 ...

  4. 使用Jmeter进行接口测试和压力测试的配置和使用

    1. Jmeter简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. JMeter 可 ...

  5. Jmeter对Websocket进行接口压力测试

    压力测试是给软件不断加压,强制其在极限的情况下运行,观察它可以运行到何种程度,从而发现性能缺陷,是通过搭建与实际环境相似的测试环境,通过测试程序在同一时间内或某一段时间内,向系统发送预期数量的交易请求 ...

  6. jmeter教程--简单的做压力测试

    Jmeter是一个非常好用的压力测试工具.  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 什么是压力测试 顾名思义:压力测试,就是  被测试的系统,在 ...

  7. jmeter模拟对网站做压力测试

    一般的网站,在进入业务功能前先需登录,然后才能访问业务功能.基本框架如下 详细步骤: 1 .用badboy录制登录,访问随意一个网址. 2.用jmeter打开,一会自己写的时候可以参考里面的参数名称或 ...

  8. (转)在Kubernetes集群中使用JMeter对Company示例进行压力测试

    背景 压力测试是评估应用性能的一种有效手段.此外,越来越多的应用被拆分为多个微服务而每个微服务的性能不一,有的微服务是计算密集型,有的是IO密集型. 因此,压力测试在基于微服务架构的网络应用中扮演着越 ...

  9. Jmeter+TCP\Scoket(8583)报文压力测试

    Jmeter一般被用来测试HTTP协议,我第一次拿来测试socket协议,pos机传输报文为8583,协议属于socket,也是TCP协议的一种,网上有LR怎么测试8583报文,我就研究了一下怎么用J ...

随机推荐

  1. 关于UML类图的一点理解(转)

    首先我们定义一个非常简单的Person类,代码如下: public class Person { private String name; private int age =1; public Str ...

  2. spring boot项目启动报DataSource错误

    初建一个简单的spring boot 项目,启动后会报错. Exception encountered during context initialization - cancelling refre ...

  3. Luogu P4768 [NOI2018]归程(Dijkstra+Kruskal重构树)

    P4768 [NOI2018]归程 题面 题目描述 本题的故事发生在魔力之都,在这里我们将为你介绍一些必要的设定. 魔力之都可以抽象成一个 \(n\) 个节点. \(m\) 条边的无向连通图(节点的编 ...

  4. mysql本地导入数据

    1.获得一个超级权限的用户 grant all on *.* to root@'127.0.0.1' identified by 'root';# 因为我想在本地导入数据,而数据就在本地.# 有时候, ...

  5. TZ_06_SpringMVC_常用注解

    1. @Controller@RequestMapping(path = "/user")//一级目录 public class FormSubmit { @RequestMapp ...

  6. 独立版的 Asio安装与使用

    Asio分为独立版和Boost版.两者使用方法基本一致,只是头文件不同.Boost版是作为Boost的子库提供的. 因为Asio的组织形式为hpp文件(不同一般的C++项目区分头文件.h和源文件.cp ...

  7. centos下彻底删除mysql

    打算重新试试安装两个mysql,就把老的删除了. yum remove mysql mysql-server mysql-libs compat-mysql51 rm -rf /var/lib/mys ...

  8. ML面试1000题系列(61-70)

    本文总结ML面试常见的问题集 转载来源:https://blog.csdn.net/v_july_v/article/details/78121924 61.说说共轭梯度法? @wtq1993,htt ...

  9. CSS Tools: Reset CSS

    样式初始化 /* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */ ...

  10. web前端学习(三)css学习笔记部分(8)-- SVN的介绍和应用、CSS动画效果、CSS3布局属性全接触

    15.SVN的介绍和应用 15.1.SVN的介绍和应用课程概要 将代码进行集中管理,有版本号的进行迭代,方便集体工作的build流程 15.2.SVN的介绍 SVN是Subversion的简称,是一个 ...