软件测试

Jmeter的数据驱动

2020-07-05  本文已影响0人  梵音11

一、简介

数据驱动测试,即是分离测试逻辑与测试数据,通过如excel表格的形式来保存测试数据,用测试脚本读取并执行测试的过程。

有的时候会有大量的测试脚本与测试数据内聚在一起,使得我们的测试脚本的可移植性及可维护性变得很不好,所以采取了csv格式表格保存测试数据来驱动测试的方式。这样也方便对脚本的移植和维护。

二、操作

1、添加一个线程组

2、线程组下新增循环控制器,循环次数设置为永远

3、循环控制器下新增CSV Data Set ConFig控件

Filename:csv文件(txt格式和dat格式)所在的路径以及名称如(如果和jmx文件在相同路径直接写名称,

如果不是,需要填写具体路径)

File encoding:给出页面的编码方式,可以不填写;

这里以百度为例,它的源代码里 ,所以这里File encoding:gb2312

Variable Names(comma-delimited):给出变量名如:name,pwd;这里的变量名是给后面引用用的,

如要用到这个文件的值,可以利用变量名来引用:

${name},${pwd},如test.csv文件中有这样的数

Delimiter(use '\t' for Tab):这个是用来隔开变量的分隔符,

如上面的name,pwd,那分隔符就是“,”或者Tab也可以

Allow Quoated data: 双引号相关,例:如果参数中需包含,或者”等,该项可以选择True,效果如下:

Recycle on EOF:(默认True),到了文件尾是否循环,True---继续从文件第一行开始读取,False---不再循环 。

Stop thread on EOF?:到了文件尾是否停止线程,True---停止,False---不停止,注:当Recycle on EOF设置为True时,此项设置无效

Sharing Mode:共享模式:

1.All threads:所有线程,所有线程循环取值,线程1取第一行,线程二取下一行。

2.Current thread group:当前线程组,各个线程组分别循环取值。

3.Current thread:当前线程,该测试计划内的所有线程都取第一行

4、用excel表格打开新建的csv文件,设计测试用例

5、添加如果控制器,来做用例优先级的筛选执行

6、根据调用方法选择请求方式

通过if选择器区分GET与POST方法的请求,配置http请求(默认)

Post请求的配置方式 :post请求参数放在body data中

Get 请求的配置方式:get请求的参数配置url后面

配置响应断言

7、执行测试,查看结果

通过查看结果树控件查看测试结果详情,绿色为通过

笔者创建了一个测试交流群,如果对软件测试、接口测试、自动化测试、面试经验交流感兴趣可以加测试交流群:829792258,还会有同行一起技术交流

上一篇 下一篇

猜你喜欢

热点阅读