jmeter对乱码如何处理_JMeter读取 Excel 表中用例数据实现接口压测

传统的接口测试,都是在接口中手动输入不同用例准备的多种场景参数数据,一遍一遍的输入来执行多个不同的用例,但是现在利用excel表格准备各种类型的数据,使用Jmeter中Jmeter CSV Data Set Config参数化实现可设置的、一次性的读取excel表中多个或者全部用例设计的数据,一次性看到多个用例数据运行出相应的结果。

这样可以避免每次去更改参数值的烦恼,也减少修改参数出错的机率。这样大大减少了测试人员的工作量,并且也提高了接口测试用例的执行效率。Jmeter 读取excel数据使用的方法是使用Jmeter CSV Data Set Config参数化,使用方法如下:

01数据准备

准备数据文件,一般以 .csv,.dat 等结尾的文件,数据之间的分隔符可用 ,或者 tab。

其中,将excel文件保存成csv格式后,jmeter读取后返回的数据总是出现乱码问题,以下就是解决的办法:先制作一个excel表格,导出存为.csv格式的文件。读取txt中的数据也是类似方法。

02数据读取

使用CSV Data Set Config参数化将csv里面的数据读取,以下是CSV Data Set Config各个参数使用说明:

(1)Filename:数据文件的路径。

(2)Delimiter:数据之间的分隔符可用 ,或者 tab。

(3)Allow Quoated data: 双引号相关,例:如果参数中需包含,或者”等,该项可以选择True。

(4)Recycle on EOF: 设置为True后,允许循环取值

(5)Stop Thread EOF: 当Recycle on EOF为false并且Stop Thread EOF 为true,则读完csv文件中的记录后,停止运行,线程数及执行次数无效。

(6)Sharing Mode:共享模式:

All threads:所有线程,所有线程循环取值,线程1取第一行,线程二取下一行。

Current thread group:当前线程组,各个线程组分别循环取值。

Current thread:当前线程,该测试计划内的所有线程都取第一行。

03参数的应用

本实例是以居民端H5的XXXX接口为例,体验一下Jmeter通过获取excel中的用例数据运行一堆用例的过程,体验一下数据驱动的执行方式:

1.先准备测试数据,准备了多条不同的测试用例的数据

2.使用benshell将数据获得

0c24c91a51e236ad8a698cf411d2d307.png

3.下面是添加一个Debug sampler(里面什么也不用,设置保持默认)

Debug Sampler介绍:

使用Jmeter开发脚本时,难免需要调试,这时可以使用Jmeter的Debug Sampler,它有三个选项:JMeter properties,JMeter variables,System properties:

(1)JMeter properties和System properties:通常都选false,这两个就是JMeter和系统的属性,在Jmeter的bin的jmeter.properties中定义,一般都不会变。

(2)JMeter variables:这个是我们自已定义的变量,定义的方式有如下这些:

a) 选中测试计划(Test plan),在右边的面板上添加User Defined Variables

b) 选中线程组,右键选择 配置元件( config element)-->User Defined Variables

c) 通过后置处理器生成的变量

d)使用csv参数化的变量

4.添加一个http post接口,传参需是json格式,因此要先配置http信息头管理器

f5a4684427c522c58b766f8602d674cf.png
3bc0d1a03a51408290cd229dca3e9649.png

5.添加线程组的察看结果树

根据设置的执行用例数目,比如:100,则执行excel表中相应的100条用例数据,并输出对应的结果,也可以进行对应的压测。此时会把excel中准备的数据前100条用例都会执行一遍,如果进行压测时,则可以把循环的测试次数设置的足够大,比如:1000,查看聚合报告,就可以看到接口测试压力测试的情况了很方便。

(1)察看结果树

1386d8f65b638c2d6ce0c5d3034e3b57.png

(2)聚合报告。对接口遍历100个用例的压测,其运行得到的聚合报告图,如下:

760fd6aa6fc928e7b7ec3265fff1fe1b.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/289308.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 利用.NET 升级助手将.NET Framework项目升级为.NET 6

概述.NET6 正式版本已经发布有一阵子了,今天我就体验一下如何将.NET Framework的项目升级为.NET 6.升级条件:Windows 操作系统.NET 6 SDKVisual Studio 2022 17.0 或更高版本环境准备①首先是VS2022下载,直接上微软官方网站,下载地…

城市遥感动态监测管理系统

1.系统概述 随着全国各城市数字化进程的发展,高分辨率遥感影像和数字航空影像为“数字城市”的建设提供了丰富的数据源。近年来,遥感影像的空间分辨率和光谱分辨率的明显提高,使得高分辨率遥感影像和数字航空影像的应用得到了极大的延伸。在城…

3月第4周全球域名商TOP15:万网第四 涨幅居亚

IDC评述网(idcps.com)04月03日报道:据WebHosting.info公布的最新数据显示,在3月第4周,全球域名商域名总量十五强排行榜中,美国占10个席位,成为最大赢家。其次是中国,有3家域名商上榜…

node.js之npm

1 npm介绍 npm是NodeJS一起安装的包管理工具 2 常用命令 1) 安装npm npm install 2) 查看npm版本 npm -v 比如我的ubuntu 6.4.1 3 ) 升级npm npm install npm -g 4) npm安装模块,比如安装react-native 0.56版本 npm install react-native0.56.0 5) npm的全局安装…

python代码加密解密_在python中加密 – 在Javascript中解密

您的Python代码和CryptoJS代码存在许多问题: >您使用随机IV加密Python中的一些明文.如果要检索该明文,则需要在解密期间使用相同的IV.没有IV,明文就无法恢复.通常,IV只是前置于密文,因为它不必是秘密的.因此,您需要在解密期间读取IV,而不是生成新的IV. >您在C…

ftp服务器客户端修改密码,如何在客户端修改FTP密码

一般情况下,FTP空间申请后,用户自己都不清楚如何修改密码,下面给出方法如下:★首先,要确认FTP服务器端允许用户修改秘密。然后运行FlashFXP,在命令栏输入命令“site pswd 旧密码 新密码”如果提示信息“230…

Task.Factory.StartNew 和 Task.Run 到底有什么区别?

前言Task.Factory.StartNew 和 Task.Run 都可以创建 Task:Task.Factory.StartNew(() > { Console.WriteLine("Task.Factory.StartNew"); });Task.Run(() > { Console.WriteLine("Task.Run"); });那它们之间有什么区别呢?实现代码查看这 2…

mvc 职能划分_MVC架构的职责划分原则

来源:https://www.awaimai.com/873.html 歪麦博客最近负责一个项目,用了 Yii Framework 的 MVC 框架,刚开始自以为结构很稳健。但是随着对业务逻辑理解的深入,才开始意识到问题的严重。我错误地理解了 MVC 中的 Controller&…

Matlab clear, clc 和close函数

1、clear 作用:删除工作空间中的项目,释放系统内存 语法:

Highcharts数据表示(3)

Highcharts数据表示(3) 採用对象数组的形式,能够明白节点上每一个项目的值。可是当节点较多时,会造成大量的冗余代码。假设不写配置项名称,对象数组就能够简化二维数组。形式例如以下:data:[[Number|String , Number , Color , Nu…

Git撤销文件的修改(git checkout -- file)(git reset HEAD file)(git reset HEAD~)

1 撤销没有add到暂存储区文件 git checkout -- file 如果我们把文件rm了,git statu肯定会显示出来,我们怎么还原这个文件呢?还是用上面的命令 2 撤销到add到暂存储区文件 分2步 git reset HEAD file 上面命令把暂存区的拉到了工作区,但是这个时候文件依然修改了,我们还…

【Blog.Core开源】框架集成部门权限

(Blog.Core框架功能点概述)Blog.Core开源四年啦,一行行代码凝结了大家的热情和心血,基本功能骨架已完成,欢迎更多的公司和企业使用哟。真实公司留言盖楼可获得一对一技术指导:https://github.com/anjoy8/Bl…

[一个经典的多线程同步问题]解决方案一:关键段CS

前面提出了一个经典的多线程同步互斥问题,本篇将用关键段CRITICAL_SECTION来尝试解决这个问题。 本文先介绍如何使用关键段,然后再深层次的分析下关键段的实现机制和原理。 关键段CRITICAL_SECTION一共就四个函数,下面说一下这四个函数的原型…

如何设置Matlab输出到Word中图片的大小

方法一:快速型核心方法:设置Word显示比例100%,Matlab的图像大小与屏幕所见的相同;根据Word的排版要求,估计Matlab图像在Word中的大小,进而调整图像大小。具体操作:(以下操作应对图像绘制完成后进行,图像绘制中字体大小、线宽等都与排版需要一致,比如8号字体,需要故意…

服务器线程数一直增加,.NET Core中遇到奇怪的线程死锁问题:内存与线程数不停地增长...

一个 asp.net core 站点,之前运行在Linux 服务器上,运行一段时间后有时站点会挂掉,在日志中记录很多“EMFILE too many open files”的错误:Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvException: Error -24 EMF…

python种颜色循环_Python 实现一个颜色色值转换的小工具

需求说明 公司的 UI 设计小哥,已经转用 Zeplin 很久了。Zeplin 的设计稿展示页面的颜色色值使用十进制的 RGB 表示的,在 Android 中的颜色表示大多情况下都需要十六进制的 RGB 表示。我的数学没有好到直接看到十进制就可以心算得到十六进制的结果&#x…

bugly中批量隐藏版本

App项目使用Bugly的内测分发功能进行整包的测试,但日积月累之后,版本就会特别多。而线上同时跑的版本可能不过三个左右,那么多版本会干扰到查看崩溃、选择版本,如何隐藏呢? 右上角,更多 –> 产品设置 –…

检查点(Checkpoint)过程如何处理未提交的事务

每次我讲解SQL Server之前,我都会先简单谈下当我们执行查询时,在SQL Server内部发生了什么。执行一个SELECT语句非常简单,但是执行DML语句更加复杂,因为SQL Server要修改内存中的相关页,并在事务日志里记录整个事务。 …

axure如何导出原件_axure导出_axure怎么导出流程图

摘要 腾兴网为您分享:axure怎么导出流程图,随身行,轻轻家教,钱宝宝,美甲帮等软件知识,以及winrar美化版,九秀直播软件,中医养生平台,酚酞瓜,4399dm,移动硬盘检…

机器学习工作坊 - 计算机视觉

点击上方蓝字关注我们(本文阅读时间:2分钟)活动介绍四月的 MS Learn 学堂,我们将进入机器学习专题。 本月三期 MS Learn 学堂,我们会以工作坊的形式,结合具体应用实例,带领大家实践计算机视觉、…