jmeter之接口功能自动化

一、接口测试简述

接口:用来连接前端,后端还有移动端的程序模块。由于不同端的工作进度不一样,需要对最开始出来的接口进行接口测试。

接口分类:POST,GET,PUT,DELETE。

POST请求的数据是放在WebForm里面的,以表单的形式提交;GET请求的数据是拼接在URL中的,以URL的形式提交数据。

不同接口类型的差异:

1.参数提交的方式;

2.请求数据的大小;

3.安全性。

接口测试主要测试要点:

1、检查请求是否成功,默认请求成功时状态码是200

2、检查返回数据的正确性(即返回的数据是否与预期结果一致)与格式

3、检查接口的容错性,即传递数据的类型错误时是否可以处理

4、接口参数的边界值。例如,传递的参数足够大或为负数时,接口是否可以正常处理

5、接口的性能,接口处理数据的时间也是测试的一个方法。这直接影响用户的使用体验

6、接口的安全性

二、jmeter工具栏及常用组件介绍

1、Jmeter常用组件介绍——HTTP请求(GET)

线程组->添加->Sampler->HTTP请求

2、Jmeter常用组件介绍——HTTP请求(POST)

线程组->添加->Sampler->HTTP请求

 3、Jmeter常用组件介绍——响应断言

HTTP请求->添加->断言->响应断言

4、Jmeter常用组件介绍——HTTP请求默认值

线程组->添加->配置元件->JDBC Connection Configuration

5、Jmeter常用组件介绍——HTTP信息头管理器

线程组->添加->配置元件->HTTP信息头管理器

6、Jmeter常用组件介绍——用户定义的变量

线程组->添加->监听器->查看结果树

7、Jmeter常用组件介绍——聚合报告

线程组->添加->监听器->聚合报告

8、Jmeter常用组件介绍——JDBC Connection Configuration

线程组->添加->配置元件->JDBC Connection Configuration

9、Jmeter常用组件介绍——JDBC Request

线程组->添加->配置元件->JDBC Request

10、Jmeter常用组件介绍——正则表达式提取器

线程组->添加->后置处理器->正则表达式提取器

三、接口测试过程

4、问题

一、如何引用变量?

1、定义变量 给需要被引用的参数值定义一个变量名,变量名是唯一的。 2、引用变量 在需要使用参数值的地方引用变量名,引用格式为: ${变量名} PS:引用变量名用到的符号均为英文字符。

二、当接口有依赖关系,即某个接口的输入参数是另一个接口的请求结果时,应该如何进行参数传递?

1、当依赖接口所需入参出现在被依赖接口的返回结果中时,

在被依赖接口的【 HTTP请求】下添加【正则表达式提取器】,使用(.+?)将所需数据从返回结果中提取出来

2、当依赖接口所需入参没有在被依赖接口的返回结果中出现时

在被依赖接口的HTTP请求后面添加【 JDBC Connection Configuration 】和【 JDBC Request】,从数据库中查询需要的数据,并在【 JDBC Request】下添加【正则表达式提取器】使用(.+?)将所需参数从查询结果中提取出来

步骤流程:请求‘注册短信验证码’接口

短信验证码验证’接口依赖‘注册短信验证码’接口

1、请求发送验证码接口

2、添加JDBC Connection Configuration连接数据库

3、添加JDBC Request查询‘注册短信验证码’接口产生的数据

4、查看数据库查询结果

5、提取验证码

6、引用验证码名称,请求‘短信验证码验证’接口

三、为什么要连接数据库进行数据查询?

当接口之间有依赖关系,但是被依赖接口的返回结果中并没有直接返回依赖接口所需的数据时,便需要从数据库中查询出需要的测试数据。 例如: ‘短信验证码验证’需要获取‘注册短信验证码’生成的验证码,但‘注册短信验证码’的返回结果为: {“StatusCode”:200,“DataCount”:0,“Data”:1,“Error”:null},并没有直接返回验证码,因此需要连接数据库查询接口生成的验证短信,并用正则表达式提取出验证码,同时定义一个引用名称,便于‘短信验证码验证’引用。

四、当多个接口可以串成一个完整业务流程时如何处理?

前提:熟悉业务逻辑和接口所实现的功能

最好实行新增操作,然后进行一系列的操作后再删除

例如:

1.新增标签

2.新增/删除指定标签下的医生/药店/商品,同时更改标签名称

3.获取指定标签下的医生/药店/商品详情

4.删除指定标签下的医生/药店/商品

5.删除标签

以上5个接口可以按照顺序串成一个完整业务流程,在Jmeter中需要按照业务逻辑顺序来安排接口先后位置。

具体实现如下:

1.请求‘新增标签’;

2.从数据库中查询新增的标签ID,引用标签ID,请求‘新增/删除指定标签下的医生/药店/商品,同时更改标签名称’;

3.引用标签ID,请求‘获取指定标签下的医生/药店/商品详情’;

4.引用标签ID,请求‘删除指定标签下的医生/药店/商品’;

5.引用标签ID,请求‘删除标签’。

如此可以保证测试数据的一致性,且不会产生过多垃圾数据。

五、如果生成的csv测试报告文件显示乱码怎么办?

1.用txt方式打开csv文件

2.文件另存为UTF-8编码格式,替换原来的csv文件

3.打开csv文件优化测试报告

4.另存为.xlsx格式

PS:最后一步一定要另存为普通excel格式,否则数据位置会错乱。

原文地址:https://www.cnblogs.com/lgx2pwj/p/12699592.html

时间: 2024-07-30 12:51:23

jmeter之接口功能自动化的相关文章

第二篇:JMeter实现接口/性能自动化(JMeter/Ant/Jenkins)

主要是对HTML报告的优化 如果按JMeter默认设置,生成报告如下: 从上面的运行结果来看,出错之后,很难从报告上去定位问题,定位问题在哪里 优化大致过程: Jmeter默认的报告展示的信息比较少,如果出错了,不是很方便定位问题.由Jmeter默认报告优化这篇文章可知,其实由.jtl格式转换为.html格式的报告过程中, style文件起了很关键的作用.下面介绍另一种style文件的使用方法: 1.下载style文件:jmeter.results.shanhe.me.xsl 2.把下载的文件放

用Jmeter进行接口自动化测试工作流程

原文转自:https://blog.csdn.net/jinganglong123/article/details/51122713 在测试负责人接受到测试任务后,应该按照以下流程规范完成测试工作.2.1    测试需求分析产品开发负责人在完成某产品功能的接口文档编写后,在核对无误后下发给对应的接口测试负责人.测试负责人拿到接口文档需要首先做以下两方面的工作.一方面,测试人员要对接口文档中各个接口的功能以及接口中涉及的各个字段的意义和用途进行理解.另一方面,测试人员也应该充分与开发人员交流,理解

SOAP WebService接口功能自动化测试

百度搜索:小强测试品牌 QQ群:522720170 本节内容节选自<小强软件测试疯狂讲义>一书 此处我们以qqCheckOnline的WebService接口为例进行讲解,接口的具体信息如下: l 接口描述:获得腾讯QQ在线状态 l 入参:qqCode,String类型,默认QQ号码:8698053 l 出参:qqCheckOnlineResult,String类型 返回数据代表的含义为:Y = 在线:N = 离线:E = QQ号码错误:A = 商业用户验证失败:V = 免费用户超过数量 l

基于Jmeter跟Jenkins的自动化性能测试的一站式解决方案(转)

www.MyException.Cn  网友分享于:2015-08-26  浏览:0次 基于Jmeter和Jenkins的自动化性能测试的一站式解决方案 作者: Yu, Qingguo Shen, Vivien Wu,Biyun 背景 性能测试用来保证产品发布后系统的性能满足用户需求,在软件质量保证中起着重要作用.Jmeter是一款广泛使用的性能 测试工具,然而,在执行测试前,用户往往需要花费很多额外的精力和时间配置测试环境.同时在进行测试时,使用单台服务器模拟数以千计的用户对目标服务器产 生负

基于Jmeter和Jenkins的自动化性能测试的一站式解决方案

作者: Yu, Qingguo Shen, Vivien Wu,Biyun 背景 性能测试用来保证产品发布后系统的性能满足用户需求,在软件质量保证中起着重要作用.Jmeter是一款广泛使用的性能测试工具,然而,在执行测试前,用户往往需要花费很多额外的精力和时间配置测试环境.同时在进行测试时,使用单台服务器模拟数以千计的用户对目标服务器产生负载,受限于服务器的性能可能无法满足需求,这就需要一个多台服务器的分布式的并发的测试环境.因此我们决定开发一个基于Jmeter和Jenkins的自动化性能测试的

jmeter的基本功能使用详解

jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简 单.因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以.jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在 linux/windows/macos上都可以使用. ??jmeter可以做接口测试和压力测试.其中接口测试的简单操作包括做http脚本(发get/post请求.加cookie.加header.加权 限认证.上传文

Jmeter Http接口性能测试

Jmeter Http接口性能测试 1.      启动Jmeter Jmeter下载解压即可使用,Jmeter启动,点击D:\ProgramFiles\jmeter\apache-jmeter-2.8\bin下的jmeter.bat就可以了. 2.      添加线程组 如下图添加线程组 线程组相当于loadrunner的vuser,这里配置线程组的各项内容.主要有以下几点需要配置: 1)线程数:设置发送请求的线程数目. 2)Ramp-up period: 就是总共设定的线程数据在多长时间内启

jmeter测试接口-打开很多TCP的连接数TIME_WAIT状态(Linux环境)导致报错的解决方法

一 发现问题: 服务器是Linux系统,用jmeter测试接口,发现打开很多的TCP连接,[[email protected] bin]# ulimit -n 65535用这个命令设置了总的连接数:进行压测的时候,连接数可能达到50000以上,很容易报错:查看各个状态的TCP个数:netstat -an | awk '/^tcp/ {++s[$NF]} END {for(a in s) print a,s[a]}',发现连接状态TIME_WAIT的状态很多,(统计80端口连接数netstat -

功能自动化接入持续集成方案

功能自动化接入持续集成方案 功能自动化一般用于项目集中测试.回归测试.dailybuild等,我们不可能通过IDE手动来运行case,一般可借助于jenkins或平台化的方式来批量执行case.下面介绍如何将功能自动化接入jenkins. 接入jenkins主要用到了其定时和轮询的功能,我们只要准备好构建jar(build.sh)和执行case(execCase.sh)的脚本,放入jenkins的Excute shell模块,然后配置定时或轮询的时间即可.build.sh和execCase.sh