zoukankan      html  css  js  c++  java
  • Jmeter系列(27)- 跨平台运行 Jmeter,CSV 文件路径如何设置?

    转自:https://www.cnblogs.com/poloyy/

    一、抛出问题

    • 上一篇文章中详细讲解了 CSV 数据文件设置的用法:https://www.cnblogs.com/poloyy
    • 通常,我们编写、调试脚本都是在 Window 机器上,而真正性能测试时,脚本几乎都在 Linux 下运行
    • 使用 CSV 数据文件做参数化时,是需要 指定文件路径
    • 这里就有个问题:Window 下写的文件路径到了 Linux 下是不正确的,导致无法正常读取 CSV 文件
    • 为了解决这个问题,下面将要讲解一个简单的万能解决方法

    二、两个前提

    • 我们的 CSV 文件必须在 Jmeter 的 bin 目录下创建,然后再添加自己要的数据
    • Jmeter 必须从 bin 目录下启动,不能通过 cmd,否则会有问题(下面说)

    三、具体方法

    ​ CSV 数据文件设置直接按下面的格式写

    img

    ​ 这样就可以了,只要把 CSV 文件上传到 Linux 系统 Jmeter 下的 bin 目录,这个脚本就可以跨平台执行了

    四、实现跨平台的原理

    5.1 __P() 函数

    ​ 用来获取 Jmeter 的属性,那我们怎么知道 Jmeter 有什么属性呢?

    5.2 如何查看 Jmeter 属性

    测试计划右键添加

    img

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

    img

    可以看到

    • file.separator 的值是 ,这也是 Window 特有的路径分隔符
    • user.dir 的值是 Jmeter 安装路径下的 bin 目录

    ​ 如果通过 cmd 运行 Jmeter,那么 user.dir 又会显示什么呢?

    img

    ​ 看到并不是显示 Jmeter 的 bin 目录,这不是我们想要的结果;所以请记住需要 在 bin 目录下启动 Jmeter

    5.4 Linux 下查看属性 user.dir,file.separator

    img

    可以看到

    • file.separator 的值是 / ,这也是 Linux 的路径分隔符
    • user.dir 的值是 Jmeter 安装路径下的 bin 目录,和 Window 的截然不同

    六、总结

    • ${__P(user.dir,)}${__P(file.separator,)}test.txt 可以根据不同的系统,不同的 Jmeter 安装路径,自动获取 Jmeter 路径,然后再获取不同系统下的文件路径分隔符,最后加上文件名称拼成文件路径
    • 这样就可以解决使用 CSV 数据文件做参数化时,跨平台导致路径不一致的问题
    • 重点前提:CSV 文件放在 Jmeter 的 bin 目录下,且通过 bin 目录运行 Jmeter
  • 相关阅读:
    [TimLinux] TCP全连接队列满
    [TimLinux] JavaScript 中循环执行和定时执行
    [TimLinux] JavaScript 事件
    [TimLinux] JavaScript 获取设置在CSS类中的属性值
    [TimLinux] JavaScript 面向对象程序设计
    [TimLinux] JavaScript 引用类型——Date
    [TimLinux] django html如何实现固定表头
    [TimLinux] Django 信号
    [TimLinux] Django 中间件
    安卓存储之文件存储方式j
  • 原文地址:https://www.cnblogs.com/dongye95/p/14180729.html
Copyright © 2011-2022 走看看