模拟验证

背景

表达式编辑可视化

用户配置网关条件表达式理解成本高,基本的变量正确性难以保证

目标

  • 简化配置学习成本,提升网关条件配置体验
  • 消除简单EL表达式因字段选择错误导致的流程卡死问题

风险评估

项目风险主要集中在原功能的可用性及编辑产出的结果表达式准确性两方面

  • 编辑功能的可用性,在设计上采取了保留直接编辑整条表达式的入口.从设计上确保了不会产生功能不可用的问题
  • 结果表达式的准确性,风险主要集中在控制存量表达式的编辑操作导致非预期的结果产生,下边内容主要针对这点

方案

模拟实际可视化过程中数据及接口交互,对全量表达式进行模拟编辑操作,获取到编辑结果与原表达式进行比对,检查两者是否保持逻辑一致

成果

验证了全量表达式在本次项目中的可用性及数据准确性

思考

  • 优先评价项目风险,围绕风险做控制
  • 设计验证方案优先利用与控制目标一致的数据,围绕控制目标实施方案制定
  • 非全新功能优先考虑利用当前资源,无可直接利用资源时也尽量转换适配数据,得到接近真实使用场景的验证数据进行模拟验证

问题教训:

  • 开始想要在可视化规则编辑里添加一些相对复杂的操作,单实际上78%的规则都只有一个操作符,也就是只由一个简单表达式组成,制作成本高,收益却不明显.故后续实现过程放弃,功能开发遇到性价比低的问题要及时放弃
  • 原表达式和结果表达式字符串比对因为生成规则不尽相同,没有直接通过代码自动处理比对,后续多次针对该功能调整,重复了10次以上的人工比对,相对浪费时间,这块的工作在当时是一个可预见的重复性工作(根据后续项目wiki),后续项目需要吸取经验,及早分析出脚本类代码的使用频率,判定其需要完善的程度

文章链接 https://fangzongzhou.github.io/2021/02/09/计算机/软件测试/测试案例/模拟验证/