今天,我们使用百度搜索做一个性能指标测试的单场景例子,测试数据分别从Excel(CSV)和XML格式的文件中提取。本文中使用到的测试文件,可从这里下载。

  • 创建一个Excel文件,输入以下数据,保存为CSV格式的文件;

    名称用途
    selenium网站自动化测试
    appiumAPP自动化测试
    jmeter性能测试

    image.png

  • 创建一个XML文件,输入以下数据,并以.xml后缀的文件保存;

    <?xml version="1.0" encoding="UTF-8"?>
    <tools>
        <tool name="qtp" />
        <tool name="rtf" />
        <tool name="loadrunner" />
    </tools>
  • 新建JMeter测试计划(Test Plan);
  • 新建名为Data From CSV的线程组;

    • 插入一个CSV Data Set Config
    • Filename指向所要读取数据的文件,~/jmeter/keywords.csv
      image.png
    • 插入一个BeanShell Sampler*,脚本中输入以下内容;
      image.png
    • 插入一个Debug Sampler,保持默认不做任何修改;
      image.png
    • 插入一个Http Request,命名为Search Request
    • 协议和服务分别输入httpwww.baidu.com;
    • 请求类型选择get
    • 添加一个参数,name和value分别为p2${name}
      image.png
    • 插入一个View Result Tree。
      image.png
  • 新建名为Data From XML的线程组;

    • 插入一个Http Request,命名为Search Request
    • 协议和服务分别输入httpwww.baidu.com;
    • 请求类型选择get
    • 添加一个参数,name和value分别为p2${__XPath(~/jmeter/keywords.xml, /tools/tool/@name)}
      image.png
    • 插入一个View Result Tree。
      image.png
  • 保存并运行测试计划;
  • 分别进入两个线程组的View Result Tree节点,查看执行结果;
    image.png
  • 注意百度搜索请求中的关键字,确认其已被正确的初始化后,再继续;
  • 给第一个线程组添加一个汇总报告Summary Report;
  • 给第二个线程组添加一个聚合报告Aggregate Report;
  • 再次运行整个测试计划;
  • 查看Summary Report中的平均、最大、响应时间等响应时间数据;
    image.png
  • 查看Aggregate Report中的中位数和不同百分位的响应时间数据,以及错误率等。
    image.png

专题目录


陈哥聊测试
158 声望3.3k 粉丝

资深敏捷测试顾问,国内知名项目管理软件禅道团队成员。