探索 MicroStrategy Cloud:创新统一测试框架全解析!

文摘   科技   2024-03-06 11:28   浙江  

背景

想必每一位测试工程师都很熟悉 AWS 和 GCP 的环境,这是日常测试工作中都会用到的环境。但和公司内部大部分的测试工程师不同的是,我所在的部门对在 Cloud 环境上的测试不会专注于某个 MicroStrategy Product 功能的测试,而是更侧重于平台层面的测试。


在之前的日常测试过程中,我们一般需要:


创建cluster,等待它创建完成

在cluster上创建env,等待它创建完成

升级env,等待它升级完成

连接上cluster,执行多个需求的测试脚本,等待各个脚本执行完成

删除env,等待它被彻底删除

删除cluster,等待它被彻底删除


聪明的小伙伴们一定发现了,我们会花很多时间在等待上。并且在多个 Cloud 环境上下文切换的同时,要保证正确性的话,会消耗我们很多的精力,这对于测试工程师来说,有一定的挑战性,尤其在 Release Validation/GA Validation 阶段,还要分别满足2天/1天的时间限制。为了解决这这些问题, Cloud 部门开发了这套测试框架。


下面,我将通过 Q&A 的形式来介绍这个框架。这样大家可以更有针对性地,查阅自己感兴趣的部分。


Q&A

1

框架的主要流程有哪些?


这套测试框架主要的流程如下:


  • 准备环境,然后执行所有的测试用例

  • 删除环境


每个流程可以通过命令行分别执行,触发后不需要任何人为的操作,解放了测试人员的生产力。


2

框架目前支持的Cloud平台有?


Cloud平台

内容

GCP MCP

支持

GCP MCE

支持

Shippable

支持

MCG

不支持,详情如下:

  1. 相比其他的环境,MCG环境的安全性要求是最高的,从而导致了对访问的限制较多;

  2. 后续我们会对自动化测试的可行性做评估。如果可行,则会在该平台开展自动化测试的编码工作;


3

该框架是否是基于什么开源框架开发的?


是基于 pytest 进行开发的。


另外在决策阶段,我们决定不采用 Cloud 平台原生的服务进行测试,因为:


  • 这些服务有较多的限制,使得编码逻辑变得更复杂;

  • 每一个 Cloud 平台使用的原生服务不同,需要一定的学习成本;

  • 这样只需要根据当前的需求,学习部分对应的 API 和 CLI 命令即可;


4

测试结果以哪些方式呈现?


  • 测试结束会自动生成测试报告,并发送测试报告到服务器,做到测试结果可追溯;

  • 自动发送测试结果到 Teams channel;



5

框架可以重复利用已有的环境吗?


可以,具体信息如下:


  • 在创建资源(例如cluster/environment)的时候,会给资源设置一个名字;

  • 在创建资源前,会用这个名字去查找资源;

  • 如果查到对应的资源,则使用该资源;

  • 如果没有查到对应的资源,则新建该资源;


通过重用资源,来达到节约资源使用经费的目的。


微策略 商业智能
微策略 MicroStrategy (Nasdaq: MSTR) 是企业级分析和移动应用软件行业的佼佼者。关注我们了解行业资讯、技术干货和程序员日常。
 最新文章