XXX物联网SCRM系统测试方案

背景介绍

项目:物联网SCRM管理系统
项目介绍:用数字化技术致力于为每一件商品赋予独一无二的身份,打通品牌与消费者之间的沟通边界,并且连接各种硬件设备,第三方系统,为企业提供供应链上的各环节数据/各种营销/大数据分析服务。

业务介绍

主业务系统分两部分:
SCRM系统:主要是生成、收集、提供各种整条供应链上的数据。
消费端:B端_APP/C端_小程序(营销侧)
SCRM系统完成每一个环节数据收集之后,B端进行数据的操作,之后C端可以进行营销的参与。最终完成C端消费数据的收集,根据数据进行分析消费数据各种场景以及喜好。

架构介绍

测试方案

测试痛点解决方案

痛点:
公司每次项目需求改动,上线之前都是由人工去回归系统的功能,并且完成主业务的回归。多个项目如果都有改动,就需要回归对此。并且回归一次系统的功能,不完全回归的情况下也需要将近一天的时间。
解决方案:进行系统+主业务的UI自动化/接口自动化来提高回归效率。
UI(web+app)框架构成:
image

接口框架构成:
image

技术总结:python+selenium/request+pytest+allure来完成框架的搭建用例的编写。
其中UI+接口都采用了PageObject的(po)设计来使数据与业务分离。依托pytest的用例管理框架完成用例的参数化,数据驱动,用例管理/执行等操作。最终执行的结果利用allure框架出具测试报告。

测试流程化:脚本与jenkins集成。
由于公司未提供服务器来进行部署这些环境,申请一台电脑作为服务器(还是windows的)
前置条件:首先在主机上安装jenkins(直接用的设计msi文件安装,安装完毕之后会直接注册到后端服务,并且默认是自启动的)


1、安装完jenkins之后安装需要用到的插件,allure/git/等插件
2、开始创建job任务来完成脚本的执行
1)创建自由风格的job任务,之后配置相关的配置,执行的代码从gitlab拉取,执行通过pytest的命令进行执行用例
2)配置构建后步骤,选择allure的报告。
ps:在执行的时候碰到了命令不是可执行命令的错误,需要在jenkins的系统配置–全局属性–Environment中把本机的环境变量引入到jenkins中(就可以解决了)
3)执行完毕之后就可以呈现allure报告了

成果:
1、每次项目需求改动跑接口/UI自动化分别的时间是:接口不到1分钟能跑完将近600的用例,UI时间半小时左右跑完300左右的用例,从时间上大大提升了发版速度提升80%以上,并且在跑用例的同时测试人员还可以做别的工作,执行完毕之后会发送邮件,有失败的用例直接看下报告的失败原因即可。
2、避免了每次上线之后连锁的修改出来的问题

维护:
1、目前的接口用例还在持续增加
2、有遗漏的测试用例补充
3、UI上/接口上有改动需要对应修改脚本的地方进行修改

介绍

  • 痛点是什么
  • 解决方案是什么
  • 技术总结与介绍
  • 解决方案效果如何
    • 回归效率提升10%
    • 节省人力xxx
    • 质量提升xxx(bug比上一个版本少了多少)

测试痛点2解决方案

测试痛点3解决方案

点评

  1. 亮点讲解的不是很清楚,自己可以提现先组织下语言。
  2. 持续集成持续交付先出方案,并等运维完成自动化部署后,可以介入流程性的自动化测试。
  3. 在自己所属的部门将流程打通之后,再推行到各个部门。