当前位置: 首页 > news >正文

测试平台metersphere

metersphere可以做接口测试、UI测试、性能测试。

metersphere接口测试底层是jmeter,可以做API管理,快捷调试,接口用例管理,接口自动化场景执行一键选取用例范围,生成测试报告。

会用jmeter,metersphere会很好上手。

如何搭建:

访问官网,按照搭建流程搭建。MeterSphere 使用场景 - 接口测试

我这里搭建到了linux服务器,通过8081端口访问。默认账号admin 密码metersphere

Metersphere接口测试流程


1、快捷调试接口
2、创建API接口-包括请求url,方法,结果等。(等同于API文档的接口形式展现)
3、基于每个接口创建用例。
4、接口自动化-创建场景,导入接口用例,
调试场景,包括设置接口关联,根据执行结果一键选取断言规则。
5、保存场景,一键执行。
6、生成测试报告。
 

快捷调试

类似postman界面,可以输入请求,并执行。

创建接口API

可以直接保存接口信息,包括每个字段是否必填。

 

测试用例管理

基于接口创建测试用例。只需要改改api的参数即成case。

这里有个坑,需要点进API里面才有创建case的功能。

 

test里修改参数,直接另存为新用例。

前置操作

可以直接导入case 

MOCK服务

当前接口没有开发完成时,给API创建一个MOCK,可以提供给其他API做关联测试。

在API里,点击MOCK,填写响应。url=mock环境地址+当前API地址,访问url,即可得到响应结果。mock环境地址在:项目设置-项目环境-MOCK环境-环境域名

 

断言规则

先执行一遍用例,然后点击推荐jsonpath提取,可以自动填入规则。

注意的点:如果是逆向用例,则需要添加一个code判断,并勾选忽略状态,否则逆向用例默认会被不通过。

 接口自动化

创建场景,一键导入用例,调试场景,保存场景。

 场景里的case,可以调整顺序,单独执行某个case,删除case。

点击调试的下拉箭头,可以生成测试报告。

 接口关联

String newToken = vars.get("access_token");//将变量token赋值给变量newToken

props.put("newToken1",newToken);//将newToken赋值给newToken1,此时newToken1已成为全局变量,其他线程直接引用${__P(newToken1)}

 先后 ${__P(newToken1)}

运行场景(包含这两个接口)即可。

 

直接提取+读即可。

接口自动化场景

 体验了metersphere的感受是,怪不得这个开源项目现在商用了,因为功能太好用了,如果企业直接用这个,而不是采用招聘测试开发从0开始造轮子,那么做接口自动化会太简单了。也许任何工具都是这样,刚开始没有这样的工具,后来有人做出来了这样的工具,大家就成了既得利益者,可以更好的利用工具,提高测试的效率,把注意力放在业务上,而不是做工具上。

  下次再尝试下其他的开源工具。

UI测试

2022.8.24 新发现metersphere新增了UI测试的功能。

UI 测试 :基于 Selenium 浏览器自动化,高度可复用的测试脚本; 无需复杂的代码编写,人人都可开展的低代码自动化测试

MeterSphere UI 测试模块围绕应用系统的 用户界面 提供以下主要功能:

元素库

平台提供元素库的功能,通过创建元素库,可以把 UI 自动化场景中的单个步骤,进行统一管理,达到页面元素在不同 UI 场景中复用的效果。

UI 自动化

支持手动创建 UI 自动化场景和导入 SeleniumIDE 工具录制好的 side 脚本文件,支持添加浏览器操作、 弹窗操作、元素操作、鼠标操作、输入操作、流程控制等步骤,并提供查看元素库、前置操作、后置操作、错误处理高级功能。

UI 自动化 - MeterSphere 文档

创建场景

添加步骤

运行场景

本地调试,需要先下载插件,然后下载对应chrome浏览器的驱动,然后在个人信息配置IP地址。

需要注意服务端和本机需要在一个网络,我这里踩坑,不在一个网络,实际不能本地调试。

 测试执行后,会有截图。

UI 测试如何远程调用浏览器 - MeterSphere 文档

  • 测试报告:提供直观、美观的页面对UI测试的结果进行可视化展示,可查看场景全部步骤和失败步骤,以及控制台详情,并且支持对步骤执行时的UI截图预览。

备注: UI 测试模块是企业版 X-Pack 功能增强包功能。如需使用企业版,请点击:申请企业版试用。

http://www.lryc.cn/news/146445.html

相关文章:

  • 论文笔记: One Fits All:Power General Time Series Analysis by Pretrained LM
  • 记录--怎么实现一个3d翻书效果
  • (数字图像处理MATLAB+Python)第十一章图像描述与分析-第一节、二节:图像描述概述和特征点
  • SSM框架的学习与应用(Spring + Spring MVC + MyBatis)-Java EE企业级应用开发学习记录(第五天)MyBatis的注解开发
  • VBA技术资料MF48:VBA_在Excel中将列号与字母转换
  • LeetCode-160. 相交链表
  • 微信小程序如何实现页面传参和页面传递多个参数
  • ChatGPT⼊门到精通(3):ChatGPT 原理
  • nginx配置keepalive长连接
  • Thread.enumerate方法
  • * 号靠近数据类型,和靠近变量名, 号靠近数据类型,和靠近变量名,有什么区别
  • 为了做好农业,拼多多请来顶尖农业专家当独立董事
  • Linux服务器安装部署MongoDB数据库 – 【无公网IP远程连接】
  • Python+PIL+qrcode实现二维码自由—普通二维码+彩色二维码+logo二维码+动态二维码(附完整代码)
  • 【Spring Data JPA】JPA 常用查询函数
  • Visual Studio 2022的MFC框架——AfxWinMain全局对象和InitInstance函数
  • 【网络】多路转接——poll | epoll
  • 音视频 ffmpeg命令视频录制(Windows)
  • 【拾枝杂谈】从游戏开发的角度来谈谈原神4.0更新
  • QT设置mainwindow的窗口title
  • SaaS多租户系统架构设计
  • Java自定义捕获异常
  • 力扣--数组类题目27. 移除元素
  • 实际并行workers数量不等于postgresql.conf中设置的max_parallel_workers_per_gather数量
  • java定位问题工具
  • 【Java】基础入门 (十六)--- 异常
  • [javaWeb]Socket网络编程
  • <MySon car=“宝马“ :money=“money“></MySon>有没有冒号
  • netty(三):NIO——多线程优化
  • Linux操作系统--linux概述