痛点:
1.后端环境不稳定影响前端测试, 前端我只是要需要正常走过这个步骤就行, 但是由于后端api问题一直block
2.特定前端步骤无法通过UI自动化跳过, 比如人脸识别等生物识别场景
老办法:
1.后端环境不稳定, 第一想到mock后端环境, 市面上该类的工具有很多, 公司尝试过yapi, 但是维护量比较大, 而且需要开发配合, 依赖较多
2.前端各种的生物识别场景, 按设计是无法作弊跳过的, 不然这就是该功能的bug了, 但在测试环境是可bypass的, 最直接的做法就是让开发单独打包关闭生物验证步骤. 但是这样违背测试理念, ui自动化运行的包 和功能测试包不完全一样, 有一定风险
新尝试:
Anyproxy, 单独部署该代理服务, 所有前端测试设备代理至该服务, 通过维护代理规则, 灵活拦截并处理请求.
并且, 代理规则可以单独维护一个项目, 代理服务启动可以配置到jenkins调度任务等, 只要项目branch的rule变动, 自动拉取rule并重新部署Anyproxy.
优点: 比全后端mock轻量很多, 实现效果是一样的, 而且不依赖开发, 无侵入性
缺点: 需要部署单独的Anyproxy代理服务, 大面积应用的情况下, 该服务的稳定性可能是一个需要考虑的问题, 而且实验发现代理本身速度比较慢, 可能也是需要优化方向