测试神器之MeterSphere

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 测试神器之MeterSphere

01 引言

MeterSphere 本质是一款 开源 的测试神器,它基本涵盖了测试人员的所有日常工作,比如测试跟踪、接口测试、UI 测试和性能测试等,不仅提高了测试的速度,还加速了高质量的软件交付。

02 MeterSphere功能

首先贴上官网的一张图:

可以看出它主要的功能如下:

  • 测试跟踪:可以满足从测试计划、测试执行到测试报告分析的全生命周期需求
  • 接口测试:比 Postman 强大; API 管理、Mock 服务、场景编排、多协议支持
  • UI测试:基于 Selenium 浏览器自动化,高度可复用的测试脚本,进行低代码 UI 自动化测试
  • 性能测试:兼容 JMeter 的同时补足其分布式、监控与报告以及管理短板,轻松实现高并发、分布式的性能压测

03 MeterSphere架构

3.1 技术栈

MeterShpere使用的技术栈有如下:

  • 后端: Spring Cloud
  • 前端: Vue.js
  • 中间件: MySQL, Kafka, Redis, Minio, Prometheus
  • 基础设施: Docker, Kubernetes
  • 测试引擎: JMeter

3.2 组件关系图

组件间的关系如下:

组件说明:

组件 说明
Chrome 浏览器录制插件 录制 Web 访问请求生成 JMeter 脚本并导入到 MeterSphere 中用于接口测试及性能测试
Jenkins 插件 在 Jenkins 中安装该插件后可将 Jenkins 任务中添加 MeterSphere 构建环节,用户在该构建环节中配置 MeterSphere 平台的认证信息后,可选择指定项目下的接口/性能测试进行触发执行
IDEA 插件 IDEA 插件,基于javadoc解析,能够自动识别类,同步接口定义到 MeterSphere
GateWay API 网关项目
Eureka 服务注册中心
工作台 MeterSphere 项目的工作台模块
项目设置 MeterSphere 项目的项目设置模块
测试跟踪 MeterSphere 项目的测试跟踪模块
接口测试 MeterSphere 项目的接口测试模块
UI 测试 MeterSphere 项目的UI 测试模块
性能测试 MeterSphere 项目的性能测试模块
系统设置 MeterSphere 项目的系统设置模块
报告统计 MeterSphere 项目的报告统计模块
Node Controller 为接口或者性能测试提供独立节点类型的测试资源池
MySQL MeterSphere 项目的主要数据均存储在 MySQL
Redis MeterSphere 项目登录用户的 Session 和任务队列信息存储在 Redis
Minio MeterSphere 项目的分布式对象存储模块
Kafka 接收 JMeter 产生的接口测试或者性能测试的结果数据
Prometheus 收集压力机及被测系统的监控数据
Data Streaming 从 Kafka 中获取接口测试或者性能测试结果数据进行处理后存入 MySQL 数据库
Docker Engine 为 Node Controller 提供 JMeter 容器运行环境
Selenium Grid 为 UI自动化测试提供运行环境,支持分布式拓展

3.3 管理模型

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

类型 描述
系统 每个独立部署的 MeterSphere 即称为一套系统
系统级角色 角色的权限范围为整个系统, 常见的角色如系统管理员, 可管理整个系统内的租户、用户及测试资源, 同时可变更修改系统级配置参数
工作空间 MeterSphere 中的一级租户, 可映射为不同的部门或者产品线
工作空间级角色 角色的权限范围限定在某个工作空间当中, 常见的角色如工作空间管理员及普通用户, 可在工作空间中创建项目、发起测试、查看测试报告等
项目 以项目维度管理各种类型测试数据,各个项目间数据隔离
项目级角色 角色的权限范围限定在某个项目当中, 常见的角色如项目管理员、项目成员、只读用户等,可在项目中创建、修改、执行测试计划、功能测试用例、接口测试用例、性能测试用例、查看测试报告等
自定义角色 可创建不同所属类型的自定义角色,满足更多样化的团队管理及在线协作

04 文末

更详细的文档可参考:https://metersphere.io/docs/v2.x/

本文主要介绍了MeterShpere的功能、系统架构以及原理等,主要的目的都是为了看看能否使用该工具来更好地去提高测试效率和质量,希望能帮助到大家,谢谢大家的阅读,本文完!

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
Linux 测试技术 数据安全/隐私保护
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
|
6月前
|
测试技术 Linux 数据安全/隐私保护
如何远程访问Linux MeterSphere一站式开源持续测试平台
MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能,全面兼容 JMeter、Selenium 等主流开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量的软件交付,推动中国测试行业整体效率的提升。
|
SQL JSON NoSQL
一站式开源持续测试平台Metersphere初探
MeterSphere 是一款一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等,全面兼容 JMeter、Selenium 等主流开源标准。本篇文章为【开源持续测试平台横向测评系列】的第一篇正式文章,旨在从安装部署、接口测试、使用体验等多方面对MS开展评测,力争以真实的实战体验,对比各个平台的优缺点。
一站式开源持续测试平台Metersphere初探
|
Linux 测试技术 数据安全/隐私保护
Linux MeterSphere一站式开源持续测试平台远程访问
在Linux 中部署MeterSphere 并且结合cpolar 内网穿透实现远程也可以访问MeterSphere 界面!
609 0
Linux MeterSphere一站式开源持续测试平台远程访问
|
消息中间件 NoSQL 关系型数据库
测试神器之MeterSphere
MeterSphere测试神器,一站式处理测试全生命周期的任何疑难杂症
505 0
|
XML 算法 测试技术
【mlflow系列5】一站式开源测试平台MeterSphere
【mlflow系列5】一站式开源测试平台MeterSphere
390 0
【mlflow系列5】一站式开源测试平台MeterSphere
|
消息中间件 关系型数据库 MySQL
一站式的开源持续测试平台---MeterSphere
MeterSphere 是一站式的开源企业级持续测试平台,涵盖测试跟踪、接口测试、性能测试、团队协作等功能,兼容JMeter 等开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量软件的交付。
1816 0
一站式的开源持续测试平台---MeterSphere
|
7天前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
37 3
|
1月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
59 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
2月前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
239 7
Jmeter实现WebSocket协议的接口测试方法