一站式的开源持续测试平台---MeterSphere

【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/107827383前端

在咱们实际的项目迭代过程当中,基本上会经历过的几个问题:vue

  • 测试用例不规范,有些甚至没有测试用例文档
  • 文档随我的喜爱随便使用,word、excel、xmind...
  • 没有专门的人去管理这些文档,时间长了就丢失了
  • 测试用例和测试脚本很凌乱,基本都是测试我的保管

之前的公司,包括如今的公司都自研过本身的测试平台,可是都不尽人意,直到看到MeterSphere让人眼前一亮,产品的厂家和JumpServer的厂家是同一个,比较靠谱,从发布到如今差很少7个月的时间,star已经超过了1.4k,很是活跃。node

image.png

为何要持续测试?

传统 QA 团队和实践难以知足数字业务的需求mysql

image.png

数字业务的要求
  • 缩短交付时间
  • 快节奏交付
  • 从质量保障到质量协助
传统 QA 的不足之处
  • 人工测试耗时长
  • “部门墙”和“交接”仍然存在
  • Bug 发现和解决成本高

什么是 MeterSphere ?

MeterSphere 是一站式的开源企业级持续测试平台,涵盖测试跟踪、接口测试、性能测试、团队协做等功能,兼容JMeter 等开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量软件的交付。git

总体定位

持续测试是企业 DevOps 实践中的关键环节github

image.png

测试跟踪

image.png

测试用例管理
  • 树状用例管理结构
  • 在线编辑用例
  • 快速导入用例
测试计划跟踪
  • 基于已有用例发起测试
  • 在线更新用例执行结果
  • 自定义测试报告模板

接口测试

image.png

测试脚本
  • 在线编辑测试内容
  • 支持参数化测试
  • 支持断言、变量提取
  • 经过浏览器插件快速录制
测试报告
  • 自动生成测试报告
  • 屡次测试结果对比
  • 查看请求及响应详情
  • 测试报告内容导出

性能测试

image.png

测试脚本
  • 彻底兼容 JMeter 脚本
  • 在线调整压力参数
  • 分布式、多平台测试资源池
  • 经过浏览器插件快速录制
测试报告
  • 自动生成测试报告
  • 屡次测试结果对比
  • 丰富的报告展现详情
  • 测试报告内容导出

团队协做

image.png

多租户支持
  • 多级租户体系
  • 支持多种租户角色
  • 租户资源隔离
测试资源管理
  • 性能测试资源池
  • 测试报告模板
  • 第三方系统对接

MeterSphere 的优点

  • 全生命周期
    可以覆盖从测试计划到测试执行、测试报告分析的不一样阶段
  • 自动化 & 扩展性
    支持接口和性能的自动化测试,可充分利用云弹性实现超大规模的性能测试
  • 持续测试
    可以与持续集成工具无缝集成,支撑企业实现测试左移
  • 团队协做
    支持不一样规模的测试团队,小到几我的的测试团队,大到数百人的测试中心

技术栈

总体架构

image.png

  • Frontend:
    MeterSphere 的前端工程, 基于 vue.js 进行开发
  • Backend:
    MeterSphere 的后端后称, 基于 Sprint boot 进行开发, 为 MeterSphere 的功能主体
  • Chrome plugin:
    浏览器插件, 录制 web 访问请求生成 JMeter 脚本并导入到 MeterSphere 中用于接口测试及性能测试
  • Node controller:
    为性能测试提供独立节点类型的测试资源池, 接收来自系统的性能测试任务, 动态的启动 JMeter 容器完成性能测试
  • MySQL:
    MeterSphere 项目的主要数据均存储在 MySQL
  • Kafka:
    接收 JMeter 产生的性能测试结果数据
  • Data streaming:
    从 Kafka 中获取性能测试结果数据进行处理后存入 MySQL 数据库
  • Docker engine:
    为 Node Controller 提供 JMeter 容器运行环境

各个组件间的关系可参考下图web

image.png

管理模型

image.png

MeterSphere 提供了多租户、多角色的管理模型, 用户可根据所在团队的实际状况进行灵活的租户体系映射算法

  • 系统:
    每一个独立部署的 MeterSphere 即称为一套系统
  • 系统级角色:
    角色的权限范围为整个体统, 常见的角色如系统管理员, 可管理整个系统内的租户、用户即测试资源, 同时可变动修改系统级配置参数
  • 组织:
    MeterSphere 中的一级租户, 可映射为一个公司下的不一样部门
  • 组织级角色:
    角色的权限范围限定在某个组织当中, 常见的角色如组织管理员, 可管理整个组织内的成员、工做空间及成员等
  • 工做空间:
    MeterSphere 中的二级租户, 可映射为一个部门下的不一样团队、项目组
  • 工做空间级角色:
    角色的权限范围如今在某个工做空间当中, 常见的角色如工做空间管理员及普通用户, 可在工做空间中建立项目、发起测试、查看测试报告等

安装部署

环境要求
  • 操做系统: CentOS 7.x
  • CPU/内存: 4核8G
  • 磁盘空间: 50G
  • 可访问互联网
一键安装

以 root 用户执行以下命令一键安装 MeterSphere:spring

curl -sSL https://github.com/metersphere/metersphere/releases/latest/download/quick_start.sh | sh
手动安装

请自行下载 MeterSphere 最新版本的在线安装包,并复制到目标机器的 /tmp 目录下sql

安装包下载连接: https://github.com/metersphere/metersphere/releases

以 root 用户 ssh 登陆到目标机器, 并执行以下命令

cd /tmp
# 解压安装包
tar zxvf metersphere-release-v1.0.3.tar.gz

在安装包解压后的目录,编辑修改安装参数, 若是无特殊需求能够不进行修改采用默认参数安装

cd metersphere-release-v1.0.3
vim install.conf

安装脚本默认使用 /opt/metersphere 目录做为安装目录,MeterSphere 的配置文件、数据及日志等均存放在该安装目录

执行安装脚本

cd metersphere-release-v1.0.3
# 运行安装脚本
/bin/bash install.sh
# 等待安装脚本执行完成后,查看 MeterSphere 状态
msctl status

安装成功后,经过浏览器访问以下页面登陆 MeterSphere

地址: http://目标服务器IP地址:8081
用户名: admin
密码: metersphere`
升级

按照本文档前述步骤, 下载新版本安装包并上传解压后, 从新执行安装命令进行升级

# 进入项目目录
cd metersphere-release-v1.x.y
# 运行安装脚本
/bin/bash install.sh
# 查看 MeterSphere 状态
msctl status

操做手册能够参考官网
https://metersphere.io/docs/user_manual/system_management/

image.png

image.png

image.png

image.png

欢迎关注 “后端老鸟” 公众号,接下来会发一系列的专题文章,包括Java、Python、Linux、SpringBoot、SpringCloud、Dubbo、算法、技术团队的管理等,还有各类脑图和学习资料,NFC技术、搜索技术、爬虫技术、推荐技术、音视频互动直播等,只要有时间我就会整理分享,敬请期待,现成的笔记、脑图和学习资料若是你们有需求也能够公众号留言提早获取。因为本人在全部团队中基本都处于攻坚和探路的角色,搞过的东西多,遇到的坑多,解决的问题也不少,欢迎你们加公众号进群一块儿交流学习。

【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/107827383

image

相关文章
相关标签/搜索