前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jmeter用例数据分离

Jmeter用例数据分离

作者头像
清风穆云
发布2021-08-09 11:21:19
5790
发布2021-08-09 11:21:19
举报
文章被收录于专栏:QA一隅

之前我们的用例数据都是配置在Jmeter Http请求中,每次需要增加,修改用例都需要打开jmeter重新编辑,当用例越来越多的时候,用例维护起来就越来越麻烦,有没有好的方法来解决这种情况呢?

其实我们可以将用例的数据存放在csv文件中,然后通过csv文件配置来读取用例中的数据,执行测试。用例数据如下图所示:

用例设计

这里以httpbin接口为例,创建用例文件:jmeter-testcase.csv

用例名称变量含义:

  • ${caseSeq}:用例编号
  • ${apiType}:api类型
  • ${apiSeq} :api版本号
  • ${apiName}:api名称
  • ${priority}:优先级
  • ${url}:api路径
  • ${methods}:请求方法
  • ${parameter}: 请求参数
  • ${expectValue}:期望值,用于断言
Jmeter设置步骤:

1.新建一个线程组,命名为:数据驱动

2.创建一个http请求默认值,设置如下:

3.添加一个循环控制器 步骤为:线程组——添加——逻辑控制器——循环控制器。循环控制器的作用可以控制整个用例循环执行的次数。默认值是1 根据用例数量可以修改为4

4.在循环控制器节点下创建CSV文件设置,具体配置内容如下:

5.创建一个if控制器,步骤为:线程组——添加——逻辑控制器——if控制器

if控制器的作用为根据不同条件执行不同的用例,例如这里根据不同的接口请求类型,分别创建了GETPOST两个控制器。

GET设置的条件语句如下:

条件语句为:"

参数:

  • Interpret Condition as Variable Expression?:如果这个选项被选中,将不会使用js解析;条件表达式的值必须是true(忽略大小写),这里我们取消勾选状态。
  • Evaluate for all children:如果选中这一项,在每个子结点执行前都会计算表达式

POST 条件语句设置为:"${methods}"=="POST"

6.创建GET请求类型的用例如下

用例名称格式:{caseSeq}_ {apiSeq}_

断言设置如下:${expectValue}引用csv中对应的值。

最后添加查看结果树,然后运行可以看到如下运行结果:

7.POST用例设置和GET类似,不过参数请求不一样,是在body中。另外请求方式为:POST

运行结果如下:

8.最后在线程组添加一个查看结果树,执行可以查看全部用例执行情况。

小结

通过这样的数据驱动,当面对大量用例时在jmeter设置就非常方便,后续的用例维护也非常高效,因为不用在jmeter一个个去单独修改用例了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 QA一隅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 用例设计
  • Jmeter设置步骤:
  • 小结
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档