jmeter通过相对路径上传文件

您所在的位置:网站首页 jmeter上传图片接口 jmeter通过相对路径上传文件

jmeter通过相对路径上传文件

2024-07-12 20:52| 来源: 网络整理| 查看: 265

这个问题困扰了我好久,终于解决了!!!分享给你们,好东西要一起用 工作中遇到很多的上传下载操作,要用jmeter实现自动化,脚本中不知道怎么写才能取到相对路径,所以刚开始为了完成工作就写了绝对路径。代码上传到服务器才发现运行不了,找不到路径,又改成服务器对应文件的绝对路径,调试通过后集成到jenkins上之后运行也是正常的。 第二天,脚本执行失败了,我在本地执行,又挂了,找不到路径。好气。。 网上搜索了一番无果,只能每次在服务器上执行。 刚开始没有什么问题,就是上服务器执行个代码么,分分钟搞定。 时间久了,上传下载相关的脚本多了,每次都要连接服务器去看,别人要用服务器就会打起来。。 在我不懈的努力下,中午找到了解决办法,哈哈哈。

(前面都是废话,你可以不看q(≧▽≦q)) 第一种方法 直接使用jmeter的函数: 点击函数助手(相信你们知道在哪找,不知道的自己百度哦),功能选择_BeanShell 在这里插入图片描述 自己填一下表达式就可以了,需要什么写什么。 我现在要取执行当前脚本的路径,表达式就是这样子:

import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();

(了解一些java的应该能看明白这个表达式) 第二行是定义参数名的,可以写也可以不写哦 在这里插入图片描述 点击生成就取到了你当前的脚本的路径啦 直接参数化,我直接把参数写在了用户自定义变量里(你自己可以选择,写哪都行) 在这里插入图片描述 我的文件是和jmx脚本放在同一个文件下的,然后直接这样调用接口就好啦。 在这里插入图片描述 导入成功了,完美。 第二种方法 你可以添加BeanShell Sampler,然后写一些代码去实现

import org.apache.jmeter.services.FileServer; import com.bzj.utils.*; String baseDir=FileServer.getFileServer().getBaseDir(); //获取当前脚本的路径 log.info("baseDir="+baseDir);//打印出来

这个跟上面那个函数助手的功能基本上是一样的啦。 但是如果你上传的文件需要做一些处理的话,最好是用第二种方式 之前遇到一些功能,会涉及到一些Excel的一些字段要改变,每次上传的不能重复,所以就用的第二种方式去做。

好啦,就说这么多,有问题可以留言哟。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3