pdf文档 Behavior-driven Tests for Microservices-based Algo Trading System

65.24 KB 1 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
本文介绍了彭博开发的一个测试框架,用于在基于微服务的算法交易系统中进行行为驱动测试。该框架通过自然语言风格的测试用例,解决了系统级测试中外部依赖的控制问题。测试框架包含两个层次:控制器层,为微服务系统提供交互接口并模拟依赖;BDD层,利用Cpp-Cucumber将自然语言映射为C++ API,方便快速编写和修改测试用例。该框架支持端到端测试、外部依赖控制、完全自动化,并集成到CI流程中,用于对算法行为的回归测试。系统已完成并投入使用。
AI总结
《基于微服务的算法交易系统的行为驱动测试》 **作者与背景**: Yuan Yuan,彭博电子交易团队高级软件工程师,拥有10余年金融软件开发经验,专注于算法交易与定价系统,擅长构建低延迟量化交易系统。持有哥伦比亚大学计算机科学硕士学位。 **主题概述**: 本文介绍了一种测试框架,用于彭博负责的基于微服务的算更交易系统,支持以自然语言风格进行行为驱动测试。 **背景与意义**: 在电子交易业务中,全面测试算法行为至关重要。尽管微服务组件可以轻松进行单元测试,但系统级测试尤其涉及外部依赖的自动化测试却较为复杂。对算法测试来说,模拟特定市场或时间条件来触发某些行为具有重要意义。 **解决方案**: 提出的测试框架针对这些痛点提供了以下功能: 1. **端到端测试**:确保从客户端到交易所的算法行为正确性。 2. **控制外部依赖**:模拟外部依赖(如市场数据、参考数据、交易执行、时间等),以触发特定条件。 3. **全自动化**:测试集成到CI流程中,确保代码变更后自动回归测试算法行为。 4. **自然语言层**:测试用自然语言编写,便于非技术人员理解和维护。 **框架结构**: 测试框架包含两层: 1. **控制层**:通过API与微服务系统交互,设置内部测试环境,包括组件、消息通道和外部依赖的模拟。 2. **行为驱动层(BDD)**:基于cpp-cucumber开源工具,将自然语言映射为C++ API,支持快速测试编写和修改,无需重新编译代码。 **项目状态**: 工作已完成,系统已投入使用,现已应用于实际场景中。
P1
下载文档到本地,方便使用
文档评分
请文明评论,理性发言.