大家好,我是老马。
最近想设计实现一个测试平台,基本的拼图已经收集的差不多了。
后续就是一步步来落地实践了!
设计蓝图

技术生态
.png)
大家好,我是老马。
最近想设计实现一个测试平台,基本的拼图已经收集的差不多了。
后续就是一步步来落地实践了!
大家好,我是老马。
在开始之前,我们对测试平台做一个基本的设想。
商业上可以参考:apifox 之类的测试工具。
我们如果想实现,最好是二开,而不是全部从零开始做。
测试平台是一个用于测试和验证软件或硬件系统功能的环境或工具集合。
它为开发人员、测试人员和质量保证团队提供了一个集中的空间,能够有效地执行各种测试,如功能测试、性能测试、负载测试等,确保软件或硬件在真实使用环境中的可靠性、稳定性和性能。
测试平台的主要目的是提高测试的效率和质量,减少人工干预,帮助团队在开发过程中尽早发现并解决潜在问题。
MeterSphere 一站式开源持续测试平台,为软件质量保驾护航。
搞测试,就选 MeterSphere!
MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能,全面兼容 JMeter、Selenium 等主流开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量的软件交付,推动中国测试行业整体效率的提升。
sudo docker run -d -p 8081:8081 --name=metersphere -v ~/.metersphere/data:/opt/metersphere/data cr2.fit2cloud.com/metersphere/metersphere-ce-allinone
# 用户名: admin
# 密码: metersphere
测试平台最强大的一个设计应该是流程控制。
测试平台的用户群体是测试,知道一些简单的判断,但是编程能力一般。
所以我们需要设计一个流程控制的系列组件,让测试拥有近似于开发的编程能力。
我们可以参考 java 的关键词设计。
这里只关注一些比较重要的流程控制。
这些关键字用于控制程序的流程:
if
else
switch
case
default
for
while
do
break
continue
return
测试平台最强大的一个设计应该是流程控制。
测试平台的用户群体是测试,知道一些简单的判断,但是编程能力一般。
所以我们需要设计一个流程控制的系列组件,让测试拥有近似于开发的编程能力。
可以通过 tree 的方式,将上面的流程串联在一起
测试平台最强大的一个设计应该是流程控制。
测试平台的用户群体是测试,知道一些简单的判断,但是编程能力一般。
所以我们需要设计一个流程控制的系列组件,让测试拥有近似于开发的编程能力。
测试平台的建设,是从“测试活动”向“测试能力体系化、工具化”的一次跃升。
尤其是对业务复杂、测试频繁、要求高质量交付的公司或项目而言,搭建一个自动化测试平台的价值巨大。
下面我从多个角度进行分析:
测试平台最强大的一个设计应该是流程控制。
测试平台的用户群体是测试,知道一些简单的判断,但是编程能力一般。
所以我们需要设计一个流程控制的系列组件,让测试拥有近似于开发的编程能力。
假设我们要建设一个一体化的测试平台
假设我们要建设一个一体化的测试平台,至少要包含
单元测试功能、
基本功能测试、
全链路测试、
性能测试
端到端测试
安全性测试
帮我详细展开一下,需要提供哪些测试能力。也可以进一步补充
测试平台最强大的一个设计应该是流程控制。
测试平台的用户群体是测试,知道一些简单的判断,但是编程能力一般。
所以我们需要设计一个流程控制的系列组件,让测试拥有近似于开发的编程能力。
假设我们要建设一个一体化的测试平台,至少要包含
单元测试功能、
基本功能测试、
全链路测试、
性能测试
端到端测试
安全性测试
帮我详细展开一下,需要提供哪些测试能力。也可以进一步补充
测试平台最强大的一个设计应该是流程控制。
测试平台的用户群体是测试,知道一些简单的判断,但是编程能力一般。
所以我们需要设计一个流程控制的系列组件,让测试拥有近似于开发的编程能力。
流程图过于复杂了,我们用一个执行树的结构来替代。可以多级树设置实现对应的能力,要如何设计实现?包含前后端
核心能力:
1)基本流程控制:if else 循环等
2)核心调用插件能力:http 接口、dubbo 接口、SQL 执行、mq 请求、shell 脚本、grovvy 脚本、python 脚本...
3)文件能力:文件的上传、scp
4) 通知能力:sms phone email