项目介绍

Jamie是一款基于JMeter + Spring Boot + Vue Admin Template的 API 自动化测试框架, 通过Docker一键安装部署. 框架具备提交脚本、手动/自动化执行测试脚本、生成测试报告、导出测试结果等功能.

开源地址

技术栈

Docker | CentOS 7 | Java 8 | Springboot 2.7.4 | MySQL 5.7 | Vue 2 | JMeter 5.6.2

安装项目

# 1. 安装docker (过程略,自行百度)
https://www.docker.com/

# 2. 拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/jix/jamie:20231001

# 3. 获取镜像ID
docker images

# 4. 启动镜像 (把$IMAGE_ID替换成实际镜像ID)
docker run --privileged=true --cap-add SYS_ADMIN -e container=docker --name="jamie" -p 30022:22 -p 30080:80 -p 33306:3306 -p 9123:9123 -d  $IMAGE_ID /usr/sbin/init

# 5. 获取容器ID
docker ps

# 6. 启动容器 (把$CONTAINER_ID替换成实际容器ID)
docker start $CONTAINER_ID

# 7. 访问项目
http://localhost:30080

本地连接容器环境

# 1. ShellCraft(XShell)访问容器
Host: localhost
Port: 30022
Protocal: ssh
User Name: root
Password: 2020

# 2. Navicat访问容器内数据库
Host: localhost
Port: 33306
User Name: root
Password: 123456

JMeter 配置

容器环境无需配置, 这里是对本地测试环境做配置.(本文演示用脚本下载: https://gitee.com/jixiang823/jamie-report-backend-listener/raw/main/demo.jmx)

  1. 安装 JMeter (过程略,自行百度) https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.6.2.zip
  2. 引入后端监听器
  3. 配置后端监听器

脚本规范

为提高脚本的可读性和可维护性, 请遵守:

项目主要功能介绍

测试报告

本地执行 JMeter 脚本后, 可访问 Jamie查看测试报告. 每执行一个.jmx文件就会生成一份报告. 如果存在若干属于同一业务线的脚本, 请将脚本合并为一个.jmx文件.

Dashboard 报告页呈现的信息主要包括:

容器内运行脚本

手动运行

在自动化运行脚本前, 建议手动运行一次, 以确保脚本能够正常执行.

  1. 提交本地脚本到服务器.
  2. 进入手动运行页面, 输入待执行脚本在容器内的绝对路径, 如/home/scripts/demo.jmx, 点击 “运行”.
  3. 观察脚本日志, 确认脚本运行结果符合预期.
  4. 回到Dashboard页面查看测试报告.

自动化运行

  1. 进入自动化配置页面, 填写 corn 表达式, 如0 0 1 * * ?, 表示每天凌晨 1 点执行一次.
  2. 启用定时任务按钮切换为亮态, 表示开启定时任务.
  3. 点击提交按钮, 完成自动化配置.
  4. 若需要关闭自动化任务, 可将启用定时任务按钮切换为灰态, 再点击提交按钮即可.

测试结果

测试结果页记录所有历史测试数据, 主要功能有:

  1. 支持关键词多条件模糊查询.
  2. 点击测试结果页每行的数据, 可查看该条用例的具体执行情况.
  3. 支持一键导出测试结果.


↙↙↙阅读原文可查看相关链接,并与作者交流