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
下载文档到本地,方便使用
文档评分