Jmeter系列(33)- 跨平台运行 Jmeter,CSV 文件路径如何设置?
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
抛出问题
- 上一篇文章中详细讲解了 CSV 数据文件设置的用法:https://www.cnblogs.com/poloyy
- 通常,我们编写、调试脚本都是在 Window 机器上,而真正性能测试时,脚本几乎都在 Linux 下运行
- 使用 CSV 数据文件做参数化时,是需要指定文件路径的
- 这里就有个问题:Window 下写的文件路径到了 Linux 下是不正确的,导致无法正常读取 CSV 文件
- 为了解决这个问题,下面将要讲解一个简单的万能解决方法
两个前提
- 我们的 CSV 文件必须在 Jmeter 的 bin 目录下创建,然后再添加自己要的数据
- Jmeter 必须从 bin 目录下启动,不能通过 cmd,否则会有问题(下面说)
具体方法
CSV 数据文件设置直接按下面的格式写

这样就可以了,只要把 CSV 文件上传到 Linux 系统 Jmeter 下的 bin 目录,这个脚本就可以跨平台执行了
实现跨平台的原理
__P() 函数
用来获取 Jmeter 的属性,那我们怎么知道 Jmeter 有什么属性呢?
如何查看 Jmeter 属性
测试计划右键添加

Window 下查看属性 user.dir,file.separator

可以看到
- file.separator 的值是 \ ,这也是 Window 特有的路径分隔符
- user.dir 的值是 Jmeter 安装路径下的 bin 目录
如果通过 cmd 运行 Jmeter,那么 user.dir 又会显示什么呢?

看到并不是显示 Jmeter 的 bin 目录,这不是我们想要的结果;所以请记住需要在 bin 目录下启动 Jmeter
Linux 下查看属性 user.dir,file.separator

可以看到
- file.separator 的值是 / ,这也是 Linux 的路径分隔符
- user.dir 的值是 Jmeter 安装路径下的 bin 目录,和 Window 的截然不同
总结
- ${__P(user.dir,)}${__P(file.separator,)}test.txt 可以根据不同的系统,不同的 Jmeter 安装路径,自动获取 Jmeter 路径,然后再获取不同系统下的文件路径分隔符,最后加上文件名称拼成文件路径
- 这样就可以解决使用 CSV 数据文件做参数化时,跨平台导致路径不一致的问题
- 重点前提:CSV 文件放在 Jmeter 的 bin 目录下,且通过 bin 目录运行 Jmeter
Jmeter系列(33)- 跨平台运行 Jmeter,CSV 文件路径如何设置?的更多相关文章
- Jmeter :多个jmeter如何参数化获取不同的CSV文件
如何为不同的jmeter engine建立不同的csv文件: 1.如果需要多个jmeter engine 去读取不同的csv文件,可以使用一个变量去区分 ${__P(InstanceID)}, in ...
- iOS - 静态库的导入和头文件路径的设置
开发过程中,免不了要用到一些第三方或者是别人写好的一些Demo,这时就经常会用到别人写的一些静态库(.a文件)和n多个头文件(.h文件),这些文件不是简单地把它们拉到自己的工程里面就行的,还要设置一些 ...
- JMeter中关于动态切换不同CSV文件解决方案
最近写case,需要当前播放节目的数据作为输入数据,所以每个时刻所用的数据只能是当前时刻附件的数据,尝试用CSV Data Set Config动态加载不同的文件,没有成功,好像CSV Data Se ...
- Jmeter系列(39)- Jmeter 分布式测试
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 为什么要做分布式 Jmeter 本身的 ...
- Jmeter系列(2)- Jmeter工具介绍、Jmeter安装目录介绍、Jmeter面板介绍
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter支持哪些测试场景? Jme ...
- Jmeter系列(3)- Jmeter安装目录介绍
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter安装目录说明 bin:包含 ...
- 【 D3.js 进阶系列 — 1.2 】 读取 CSV 文件时乱码的解决方法
在 D3 中使用 d3.csv 读取 CSV 文件时,有时会出现乱码问题. 怎么解决呢? 1. 乱码问题 使用 d3.csv 读取 xxx.csv 文件时.假设 xxx.csv 文件使用的是 UTF- ...
- 关于jmeter读取CSV文件的详细设置
jmeter 读取excel数据使用的方法是使用Jmeter CSV Data Set Config参数化 但是将excel文件保存成csv格式后,jmeter读取后返回的数据总是出现乱码问题, 以下 ...
- Jmeter系列(5)- jmeter.properties常用配置项讲解
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html jmeter.properties 所 ...
随机推荐
- KVM虚拟机使用NAT+iptables做端口映射
环境介绍 有一个KVM宿主机,一个外网IP绑定在了宿主服务器上,但是希望直接用ssh访问上面的所有虚拟机,还想虚拟机提供外网服务, 解决方法如下: 环境为RHEL6.3,外网IP为 61.155.xx ...
- pip常出问题的操作
pip 是一个 Python 包安装与管理工具. 以pip安装yaml为主: 1.更新pip 打开cmd命令,安装yaml包,输入pip install pyyaml,提示pip已过期 更新pip版本 ...
- 如何通过AzureAD平台提供的授权方式访问sharepoint online
官方文档: 1.https://docs.microsoft.com/zh-cn/previous-versions/azure/dn645543(v=azure.100)?redirectedfro ...
- C# Winform界面不能适配高DPI的解决方法
1. 将 Form 的 AutoScaleMode 属性设置为 DPI: 2. 在Program.cs中修改代码 class Program { [STAThread] static void Mai ...
- 厉害了!除了find命令,还有这么多文件查找命令,高手必备!
大家好,我是良许. 在系统里查找文件,是所有工程师都必备的技能(不管你用的是 Windows .Linux.还是 MacOS 系统).对于 Linux 操作系统,单单一个 find 命令就可以完成非常 ...
- 记linux vsftpd配置遇到的错误
环境:centos 7 yum安装 yum install -y vsftpd 增加用户 # 家目录为/www 并设置nologin useradd -d /www -s /sbin/nologin ...
- C# 加密、解密PDF文档(基于Spire.Cloud.SDK for .NET)
Spire.Cloud.SDK for .NET提供了接口PdfSecurityApi可用于加密.解密PDF文档.本文将通过C#代码演示具体加密及解密方法. 使用工具: Spire.Cloud.SDK ...
- activity的四种启动模式详细分析
1.android中通过任务队列来管理activity 采用栈的结构就是后进先出 手机里面如果启动多个应用就会启动多个任务栈来管理对应的activity. 主要解决下面的问题:对应的四种启动模式: 1 ...
- JavaWeb网上图书商城完整项目--day02-27.查询所有分类功能之Servlet和Service层
我们在上面实现了数据库层的代码,现在我们来实现业务层和Servlet层的代码:业务层的代码如下: package com.weiyuan.goods.category.service; import ...
- springboot自动装配原理
最近开始学习spring源码,看各种文章的时候看到了springboot自动装配实现原理.用自己的话简单概括下. 首先打开一个基本的springboot项目,点进去@SpringBootApplica ...