—
前言
大家好,我是RunnerGo小白,一名测试工程师。之前一直在用Postman、JMeter做接口测试,最近公司引入了RunnerGo平台,花了几天时间深入研究,发现这个国产测试工具真的很强大。
这篇文章是我的RunnerGo入门笔记,整理了官方文档的核心内容,加上我的实际操作经验。如果你也想快速上手RunnerGo,这篇指南应该能帮到你。
本文章参考RunnerGo v2.3官方文档:https://wiki.runnergo.cn/docs/
—
一、RunnerGo是什么?
平台定位
RunnerGo是一款面向企业的全栈测试平台,定位是:
- 一站式测试解决方案
- 国产自主研发
- 开源免费
核心功能
RunnerGo集成了四大测试能力:
| 功能模块 | 用途 |
|---|---|
| 接口测试 | API调试、自动化测试 |
| 性能测试 | 压力测试、并发测试 |
| 自动化测试 | 场景编排、定时执行 |
| UI测试 | Web自动化测试 |
与其他工具对比
| 功能 | Postman | JMeter | RunnerGo |
|---|---|---|---|
| 接口调试 | 专业 | 基础 | 专业 |
| 性能测试 | 不支持 | 专业 | 专业 |
| 自动化编排 | Newman | 复杂脚本 | 可视化 |
| UI测试 | 不支持 | 不支持 | 支持 |
| Mock服务 | 支持 | 不支持 | 支持 |
| 中文界面 | 部分 | 无 | 完全中文 |
RunnerGo的优势:
- 一个平台解决多种测试需求
- 可视化操作,降低学习门槛
- 完整的中文文档和界面
- 开源免费,社区活跃
—
二、RunnerGo部署安装
部署方式
RunnerGo支持三种部署方式:
1. 在线体验版:直接访问官网体验
2. Docker部署:快速本地部署
3. 源码部署:自定义部署
Docker部署(推荐)
官方文档提供的Docker部署步骤:
bash
1. 克隆项目
git clone https://gitee.com/Runner-Go-Team/RunnerGo.git
2. 进入部署目录
cd RunnerGo/docker-compose
3. 启动服务
docker-compose up -d
4. 查看服务状态
docker-compose ps
服务组件
RunnerGo包含以下服务:
| 服务 | 端口 | 用途 |
|---|---|---|
| RunnerGo-web | 3000 | 前端界面 |
| RunnerGo-server | 8000 | 后端API |
| MySQL | 3306 | 数据存储 |
| MongoDB | 27017 | 报告存储 |
| Redis | 6379 | 缓存服务 |
访问平台
部署完成后:
- 前端界面:
http://localhost:3000 - 默认账号:
admin - 默认密码:
runnergo123
以上部署信息参考RunnerGo官方文档”快速部署”章节
—
三、第一个接口测试
创建团队
RunnerGo以团队为单位管理测试资源:
1. 登录后点击”创建团队”
2. 输入团队名称
3. 添加团队成员
创建接口
步骤:
1. 进入团队,点击”接口管理”
2. 点击”新建目录”,创建分类
3. 点击”新建接口”
接口配置
RunnerGo支持多种接口类型:
| 类型 | 协议 |
|---|---|
| HTTP | REST API |
| WebSocket | 实时通信 |
| TCP | 自定义协议 |
| MQTT | IoT协议 |
| Dubbo | RPC协议 |
HTTP接口配置示例:
yaml
接口名称: 获取用户列表
请求方法: GET
请求URL: https://api.example.com/users
请求头:
Content-Type: application/json
Authorization: Bearer {{token}}
请求参数:
page: 1
pageSize: 10
发送测试
配置完成后,点击”发送”按钮:
- 查看响应状态码
- 查看响应时间
- 查看响应Body
断言验证
RunnerGo支持多种断言方式:
javascript
// 状态码断言
StatusCode == 200
// 响应时间断言
ResponseTime 0
// 包含断言
Body contains “success”
—
四、环境变量管理
环境概念
RunnerGo的环境管理类似Postman:
- 不同环境使用不同配置
- 变量可在接口中引用
创建环境
步骤:
1. 点击”环境管理”
2. “新建环境”
3. 配置环境变量
环境变量示例
yaml
开发环境
环境名称: Dev
变量列表:
– 名称: base_url
值: http://dev.api.com
– 名称: token
值: dev-token-xxx
测试环境
环境名称: Test
变量列表:
– 名称: base_url
值: http://test.api.com
– 名称: token
值: test-token-xxx
使用变量
在接口配置中使用双大括号引用:
URL: {{base_url}}/users/{{user_id}}
Header: Authorization: Bearer {{token}}
—
五、自动化场景编排
场景概念
RunnerGo的场景编排功能可以将多个接口组合成测试场景:
- 定义接口执行顺序
- 设置接口间的数据传递
- 添加条件判断和循环
创建场景
步骤:
1. 进入”自动化测试”
2. “新建场景”
3. 添加接口节点
场景编排示例
一个典型的登录流程场景:
场景:用户登录后查询订单
1. [登录接口]
– 请求:POST /auth/login
– 提取:token = response.data.token
2. [查询用户信息]
– 请求:GET /user/info
– Header:Authorization: Bearer {{token}}
– 提取:userId = response.data.id
3. [查询订单列表]
– 请求:GET /orders?userId={{userId}}
– 断言:response.data.length
0
数据提取
RunnerGo支持从响应中提取数据:
javascript
// JSON提取
提取变量: userId
提取表达式: response.data.id
// 正则提取
提取变量: orderId
提取表达式: “orderId”:”(d+)”
// 响应头提取
提取变量: sessionToken
提取位置: Headers.X-Session-Token
流程控制
RunnerGo支持流程控制节点:
| 觋制类型 | 用途 |
|---|---|
| 条件判断 | 根据条件执行不同分支 |
| 循环 | 重复执行某段流程 |
| 等待 | 设置执行间隔 |
| 断言 | 验证响应数据 |
—
六、定时任务配置
定时执行
RunnerGo支持设置定时任务:
- 定期执行测试场景
- 自动发送测试报告
- 监控接口稳定性
创建定时任务
步骤:
1. 进入”定时任务”
2. “新建任务”
3. 选择要执行的场景
4. 设置执行周期
Cron表达式
RunnerGo使用Cron表达式定义执行周期:
bash
每天早上9点执行
0 9 * * *
每小时执行一次
0 * * * *
每周一早上10点执行
0 10 * * 1
每30分钟执行一次
*/30 * * * *
通知配置
定时任务完成后可以发送通知:
- 钉钉通知
- 企业微信通知
- 邮件通知
—
七、性能测试入门
性能测试模块
RunnerGo内置性能测试功能,类似JMeter:
- 支持HTTP协议压测
- 实时查看测试报告
- 分析性能瓶颈
创建性能测试
步骤:
1. 进入”性能测试”
2. “新建测试计划”
3. 配置测试参数
测试参数配置
yaml
测试名称: 用户接口压测
并发数: 100
持续时间: 5分钟
预热时间: 30秒
目标接口:
– GET {{base_url}}/users
测试数据:
– userId: 1-1000 (随机)
性能指标
RunnerGo性能测试报告包含:
| 指标 | 说明 |
|---|---|
| 平均响应时间 | 所有请求的平均耗时 |
| 最大响应时间 | 最慢请求的耗时 |
| TPS | 每秒处理事务数 |
| 成功率 | 成功请求占比 |
| 错误率 | 失败请求占比 |
报告分析
RunnerGo提供可视化性能报告:
- 响应时间曲线图
- TPS趋势图
- 错误分布图
- 资源消耗统计
—
八、测试报告
报告类型
RunnerGo提供多种测试报告:
| 报告类型 | 用途 |
|---|---|
| 接口测试报告 | 单个接口测试结果 |
| 自动化测试报告 | 场景执行结果 |
| 性能测试报告 | 压测结果分析 |
报告内容
自动化测试报告包含:
- 执行概览(成功率、执行时间)
- 接口详情(请求、响应、断言)
- 错误信息(失败原因、堆栈)
- 性能统计(响应时间分布)
报告分享
RunnerGo支持:
- 报告导出(PDF、HTML)
- 报告分享链接
- 报告历史记录
—
九、最佳实践建议
接口管理规范
1. 合理组织目录结构
项目/
├── 01-认证模块/
├── 02-用户模块/
├── 03-订单模块/
└── 04-公共接口/
2. 统一命名规范
– 接口名称:模块_功能_操作
– 例:用户_列表_查询
3. 添加接口描述
– 说明接口用途
– 标注必填参数
– 记录修改历史
自动化场景设计
1. 模块化设计
– 公共流程独立成子场景
– 登录、签名等可复用
2. 数据驱动
– 使用CSV/JSON测试数据
– 覆盖多种测试场景
3. 断言完整
– 状态码断言
– 业务数据断言
– 响应时间断言
性能测试建议
1. 渐进式压测
– 从低并发开始
– 逐步增加压力
– 观察系统反应
2. 预热阶段
– 设置预热时间
– 让系统达到稳定状态
3. 监控配合
– 压测时监控服务器资源
– 结合日志分析瓶颈
—
十、RunnerGo学习路径
入门阶段(1-2周)
- 熟悉平台界面
- 完成第一个接口测试
- 理解环境变量
- 学习断言配置
进阶阶段(2-4周)
- 学习场景编排
- 掌握数据提取
- 配置定时任务
- 分析测试报告
高级阶段(4周以上)
- 性能测试实践
- CI/CD集成
- Mock服务配置
- 团队协作管理
—
总结
RunnerGo作为国产全栈测试平台,优势明显:
| 优势 | 说明 |
|---|---|
| 一站式 | 接口+性能+自动化+UI |
| 易上手 | 可视化操作,无代码门槛 |
| 中文化 | 完整中文界面和文档 |
| 开源 | 免费使用,社区支持 |
相比Postman+JMeter的组合,RunnerGo更集成化,学习成本更低,适合团队协作。
—
参考资料
- RunnerGo官方文档:https://wiki.runnergo.cn/docs/
- RunnerGo Gitee仓库:https://gitee.com/Runner-Go-Team/RunnerGo
- RunnerGo GitHub:https://github.com/Runner-Go-Team/runnerGo
- RunnerGo官网:https://www.runnergo.com/
本文章基于RunnerGo v2.3文档整理,部分内容引用官方文档原文
—
下期预告:RunnerGo接口测试实战 – 打造高效API测试工作流