跳到主要内容
Sparkling Logic

决策引擎 · 测试

决策引擎上线前怎么测:规则测试与决策测试方法

原文作者 Sparkling Logic · 中文编译 上海数泱

决策引擎规则测试与仿真示意

决策测试是在决策逻辑上线前,验证其准确性和运行表现的过程。它要回答两个问题:决策逻辑是否和我想要的一致?我想要的逻辑是否能产出我预期的结果?做法上,要尽早建好测试用例库、覆盖多样场景,并用大规模仿真检验整个决策系统。

本文属于原厂介绍 SMARTS™ Washington 版本新功能的系列文章。

什么是决策测试?

决策测试(Decision Testing)是决策管理中的关键环节,用来在部署前验证决策逻辑的准确性和表现。换句话说,测试帮你确认两件事:

  • 决策逻辑是否符合我原本的设计意图?
  • 按设计意图写出的决策逻辑,能否产出我预期的结果?

质量保证(QA)测试包括哪几类?

质量保证(QA)是确保产品和服务达到预先设定的预期或质量标准的系统化方法。QA 起源于制造业,后来在服务业和科技行业也变得必不可少。在软件开发中,QA 测试用来确保软件在发布前满足功能、易用性和可靠性方面的要求,通常包括两类测试:

测试类型 目的 时机与用例规模
回归测试 确认最近新增或修改的代码没有破坏已有功能,同时检查代码和代码的输出 在开发周期中频繁进行,使用预先已知预期结果的测试用例
功能测试 确认软件的每项功能都按预期工作,关注的是整体而不是逐行代码 通常在关键节点进行(如某项功能完成时),用例比回归测试更多,以覆盖所有已知的假设情形

规则测试在决策管理中怎么做?

软件开发中的这些测试方法同样适用于决策开发。开发决策逻辑的过程中,应频繁做回归测试,检查决策逻辑和决策策略中的错误;修改已有决策逻辑时,也应频繁运行回归测试。

要做到这一点,测试用例必须随时可用。因此原厂一贯建议:在开始开发决策逻辑之前,就先着手建立测试用例库,既包括常见场景,也包括边缘案例。决策逻辑开发完成后,建议再运行大规模仿真,不仅检验决策逻辑整体的“功能”,也检验整个决策系统。

决策测试的最佳实践可以归纳为三条:

  1. 尽早建立测试用例库;
  2. 测试用例覆盖多样化的场景;
  3. 运行仿真,检验整个决策系统。

对国内和东南亚的意义:信贷、反欺诈等风控策略一旦上线出错,影响的是大量真实客户和监管合规。无论在国内还是东南亚市场,把规则测试和回归测试做成每次改规则前的固定步骤,是降低决策引擎上线风险的基本做法。

决策引擎 SMARTS™ 如何支持决策测试?

SMARTS™ 决策管理平台在设计时就考虑了决策测试,提供多种工具支持回归测试和功能测试:

  • 结合数据开发决策逻辑:用户在 SMARTS™ 界面中可以对照数据开发决策逻辑。新建决策项目时,只需上传一个测试用例文件,数据模型就会从测试用例中提取或推断出来,供编写决策时引用。
  • 没有测试用例时用 AI 生成:如果还没有测试用例,用户可以借助 SMARTS™ 的生成式 AI 工具 AI Assistant,用自然语言逐步创建数据模型和测试用例。
  • 一键回归测试:开发决策逻辑的过程中,点击界面上的“Run”按钮即可对测试用例快速运行回归测试。用户可以查看每条测试用例经过的决策流路径,也可以在可自定义的仪表盘(Dashboard)里查看汇总结果。
  • 衡量决策质量:通过定义计算项、业务术语和 QA 标记,用户可以方便地衡量决策质量、找出未通过的测试用例;还可以借助 SMARTS™ 的执行追踪和调试工具做进一步分析。
  • 大规模仿真:决策逻辑完成后,用户可以用仿真(Simulations)工具,在任意规模的数据集上,以多种协议和格式、同步或异步地运行大规模仿真。据原厂介绍,有客户运行的测试用例达到数百万条。

冠军/挑战者实验适合什么情况?

除了回归测试和功能测试,SMARTS™ 还支持冠军/挑战者(Champion/Challenger)实验,可以同时测试多种决策策略,例如对比 Python 模型和评分卡。这类实验在开发环境和生产环境都可以设置。

如果在开发阶段无法完整衡量决策质量,冠军/挑战者实验是降低生产风险的有效方式。实验还可以以影子模式或后台方式部署:机构继续按现有策略执行业务,同时收集新策略的数据。

决策测试能带来什么?

把测试纳入决策逻辑开发流程,机构可以确保符合监管要求,验证决策策略与业务目标一致,并降低代价高昂的决策错误带来的整体风险。借助 SMARTS™,测试可以轻松进行,并且能高频率、大批量地运行测试用例。

让下一次规则变更更快、更可控

告诉我们您的业务场景、目标市场和管理要求,我们将为您安排有针对性的产品演示。