文章目录
-
- 一、环境统一要求
- 二、基础模板使用
- 三、数据处理
- 四、用例线程组
- 五、请求/事务命名方式
- 六、csv参数化文件
- 七、接口验证场景
- 八、响应断言
- 九、脚本注释
- 十、脚本命名规则
- 十一、脚本存放说明
- 十二、项目脚本管理
- 十三、使用文档说明
- 十四、命名规范
一、环境统一要求
环境配置:
【必备环境配置】
apache-jmeter:5.3
jdk:1.8
【批量执行脚本自动化生成测试报告配置】
RunCase:1.5.4.1
ant: 1.10.12
【持续集成配置】
ant: 1.10.12
Jenkins:jenkins-2.32.2
参考文档:https://www.jianshu.com/p/8b33585ccc1c
【注】安装包获取路径: https://hoteamsoft.feishu.cn/drive/folder/fldcnXHYmwIeGR9wPsBynsB98dg
二、基础模板使用
1、全局配置,采用统一脚本处理, 直接拿模板(jmeter接口模板.zip)使用
包含公共内容:JDBC数据库配置 、HTTP请求默认值、HTTP Header、token获取 :[获取](https://download.csdn.net/download/qq_32828053/87400901)
三、数据处理
2、数据处理
数据准备:setUp线程组
按以下优先级进行数据准备(数据可直接写死在请求body中,无须csv参数化文件):
a. 通过请求接口获取
b. 数据库查询
c. [setUp-登录]:用于登录获取token并设置全局的请求头,可直接使用;
d. [setUp-公共数据准备]:用于准备一批公共数据,也不需要更改直接使用;
数据清理:tearDown线程组
统一调用接口进行数据清理,不建议直接删除数据库表,
因为表之间有复杂的关联关系
[tearDown-公共数据清理]:用来清理公共的数据
四、用例线程组
3、用例线程组
命名:所属模块-所属功能点
例如:视图管理-新增视图;
包含内容:
a. 用例线程组上需要根据用例的数量设置循环次数;
b. 需要执行的用例文件.csv导入;
c. 测试用例接口;
d. 用例数据清理(根据场景调用清理数据接口,必要时可以使用if循环器);
注意事项:
当前用例组需要特殊前置数据([setUp-公共数据准备]无法提供的)需要自己准备【也可以编写在set-up中】
当前用例组产生的数据需要清理掉
五、请求/事务命名方式
4、请求/事务命名方式
线程组名称-功能名称-${CASE_NUM}-${CASE_NAME}
CASE_NUM: 用例编号,命名方式:英文+001(三位数字编号,举例TenantAdd001,TenantEdit001)
CASE_NAME:验证场景说明(举例:名称为null,编号重复)
【注】:CASE_NUM、CASE_NAME取自参数化用例文件的内容,只需要在csv脚本维护既可
六、csv参数化文件
5、csv参数化文件
存放位置: 用例数据文件夹下,按功能模块划分
格式:.csv
路径:使用相对路径,可自定义变量存储公共父级路径。当前按照模块统一存放在脚本目录的同级目录的目录下
内容:首行为变量名,以‘,’为分隔符,包括CASE_NUM、CASE_NAME、请求参数、code(期望错误码)
七、接口验证场景
6、接口验证场景
业务功能测试:正常场景覆盖100%;异常场景覆盖30%
参数组合测试(常见过滤查询接口)
多选操作校验(常见删除一个或多个)
唯一性校验(常见名称或编号)
必填性校验(参数有、无或为null)
参数边界值、类型校验(部分是通过前端控制,接口可不校验)
八、响应断言
7、响应断言
基础校验:仅校验code错误码
业务校验:可调用接口或数据库查询进行辅助校验
举例:对于编辑接口,一是校验编辑成功后返回的code正确,二是可调用过滤查询接口,校验编辑后的信息确实已更新
九、脚本注释
8、脚本注释
线程组注释:添加线程组的功能说明
请求注释:添加请求的参数变量说明
十、脚本命名规则
9、脚本命名规则
一个功能菜单的所有接口写在一个.jmx脚本中,脚本名称以功能模块命名,如 租户管理.jmx
十一、脚本存放说明
10、脚本存放说明
-项目目录名称
-脚本目录
-脚本(每个脚本是一个模块)
-脚本用例参数目录
-脚本用例参数文档.csv
导入导出文件目录
-使用说明文档
-jmeter快速执行文档【根据实际情况】
十二、项目脚本管理
11、项目脚本管理
a. 统一使用Git进行脚本管理
b. 所有更新/新增的脚本不会直接合并到master分支,需要审核通过才能合并;git地址:http://XXXXX/autotest/tcljmeterapi
十三、使用文档说明
12、使用文档说明
主要标注执行方式,其他文档的存放位置等,或者创建bat执行文件
技术参考文献:【暂定】
十四、命名规范
命名规范
统一目录命名:
--jmx:存放测试脚本
--模块名称+用例数据:存放用例文件和模块导入导出等文件
统一脚本名称:
--模块名称+接口测试.jmx
统一线程组命名:
--setup/teardown线程组:存放公共准备数据:setup/teardown-线程组作用(登录、公共数据准备、公共数据清理)
--用例线程组:模块下细分模块名称-用例名称
统一接口请求名称:
--公共数据准备/清理接口:setup/tearDown-接口描述-标识
--用例接口:模块下细分模块名称-用例名称-${CASE_NUM}-${CASE_NAME}
统一用例csv文件:
--格式:csv文件
--命名:模块名称+用例数据.csv
--内容包含CASE_NUM、CASE_NAME、code等值
--文件中需要使用baenshell替换的数据统一使用NA/MA替换
统一逻辑控制器命名:
--业务场景放到事务控制器:业务场景
--参数场景放到事务控制器:参数场景
--前置数据/后置数据放到事务控制器:setup/teardowm-数据准备/数据清理
--if判断控制器:描述判断内容