技术应用 | 浅谈自动化测试方案在算法服务器信创改造中的实践(技术应用的重要性)

技术应用 | 浅谈自动化测试方案在算法<strong>服务器</strong>信创改造中的实践(技术应用的重要性)

文/中信建投证券股份有限公司 陶剑峰 周洪 邢斌

自动化测试方案信创实践的必要性及重大意义

信创改造是我国信息技术战略的重要组成部分,其核心目标在于通过技术自主可控与安全防护能力的提升,推动企业数字化转型和国家信息安全建设。信创改造不仅关乎国家信息安全的长远发展,更是提升我国信息技术产业自主创新能力的关键路径。然而,在信创改造项目的实施过程中,面临着诸多复杂而严峻的挑战。首先,技术选型的复杂性使得项目在初期就面临诸多不确定性;其次,功能场景的稳定性与性能场景的优化问题,直接影响到改造后的系统能否满足实际业务需求;最后,保障所有接口的功能表现一致性更是难度巨大。传统的测试方法,如通过相同的案例测试新旧版本并比对接口响应,虽然简单易行且有效,但需要投入大量的资源进行测试及比对,对测试人员的认真程度要求极高,且在紧张的迭代开发中难以快速、重复进行。这些问题对信创改造中后期的测试与验收工作构成了巨大的考验与挑战。

为应对这些挑战,本文提出了一种算法服务器自动化测试方案,该方案充分利用Python丰富的三方库资源,快速构建目标接口库与覆盖用例库,通过自动化请求、记录与核对的方式,高效对比新旧服务器的数据,快速发现异常与错误。与传统手工测试相比,自动化测试方案在多个方面展现出显著优势。首先,它能够显著提升测试效率,通过预设的测试脚本和工具,自动、快速地执行大量测试用例,极大缩短了测试周期。其次,自动化测试基于固定的脚本和规则执行,每次测试的条件和步骤保持一致,从而提供了稳定可靠的测试结果,避免了手工测试中因测试人员操作差异和判断标准不一而导致的结果波动。此外,自动化测试还有效降低了人力成本,使测试人员能够将更多时间和精力投入到复杂场景的测试设计和缺陷分析中,进一步提升了测试工作的整体价值。通过在不同场景下的应用测试,本文详细探讨了该自动化测试方案的适用性,分析其如何提高信创改造的效率与准确性。研究结果表明,该方案不仅能够高效地发现接口功能的不一致性和潜在错误,还能在复杂的业务场景中保持高度的稳定性和可靠性,为信创改造项目的顺利推进提供了有力的技术支持。

自动化测试在信创改造中的应用,不仅是提升测试效率和质量的关键手段,更是推动信创改造流程持续改进和创新的重要动力。它通过高效、稳定的测试机制,为信创改造项目提供了可靠的技术支持,确保了接口功能的一致性和数据的准确性。同时,自动化测试方案的实施还促进了开发、测试和产品团队的紧密合作,增强了沟通效率,支持快速迭代与持续交付,提升了信创改造项目的整体效能。综上所述,本文提出的自动化测试方案为金融机构和研究者提供了一种全面、有效的数据验证方案,能够确保金融数据的准确性和完整性,从而提升金融机构的风险管理水平和投资策略优化能力,为金融市场的健康发展提供有力保障。

算法服务器自动化测试方案介绍

1. 架构介绍。本测试框架旨在提供一个全面、高效且灵活的测试解决方案,以支持从接口导入、配置到测试结果分析的全过程(见图)。

图 算法服务器自动测试方案架构图

框架的核心部分由基础框架、接口库、数据配置、测试用例、测试计划及测试结果等多个关键模块构成。

基础框架是基于Python强大的三方库自研的一套测试基座,提供网络请求、数据分析等基础功能。接口库是测试框架的重要组成部分,它用于存储和管理各种接口信息。用户可以通过简单的“接口导入”功能,将需要测试的接口信息快速导入到接口库中。同时,接口库还支持详细的接口配置,包括请求参数、响应格式等,确保测试过程中接口的准确性和一致性。数据配置作为测试数据的存储中心,负责存储全局参数、用例参数、预期数据等关键信息。这些信息在测试过程中被调用和验证,以确保测试的准确性和可靠性。数据库的设计充分考虑了数据的完整性和安全性,确保测试数据在传输和存储过程中的安全性和稳定性。测试用例是测试框架的核心部分之一,它描述了具体的测试任务和步骤。本框架支持多种类型的测试用例,包括单接口用例、组合场景用例和关联测试用例等。测试人员可以根据测试需求选择合适的测试用例类型,并对其进行详细的配置和设置。测试用例的设计充分考虑了测试的全面性和覆盖率,确保测试能够覆盖到软件的各个角落。测试计划是用户为了达成特定测试目标而制定的一系列测试活动和任务的规划。本框架提供了“创建测试计划”和“选择测试模式”等功能,帮助测试人员轻松地制定和执行测试计划。测试计划的设计充分考虑了测试的可追溯性和可重复性,确保测试过程能够按照预定的计划顺利进行。测试结果展示了测试过程中收集到的各种数据和结果,包括测试报告和过程跟踪详情等。测试人员可以通过这些结果来评估测试任务的执行情况和软件的质量水平。测试结果的设计充分考虑了数据的可读性和可分析性,帮助用户快速定位问题并采取相应的措施。

此外,本测试框架还支持与其他测试工具、CI/CD系统的集成和扩展。项目团队可以根据自己的需求选择合适的工具和系统进行集成,实现测试流程的自动化和智能化。这种可扩展性和集成性使得测试框架能够适应不同规模和复杂度的项目需求,为测试人员提供更加灵活和多样化的测试选择。

2. 功能介绍。本测试框架针对不同测试需求和场景设计了多种功能,以满足开发者和测试人员的多样化需求。以下是本框架的详细功能介绍。

(1)单接口测试。单接口测试是测试框架中最基础也最重要的功能之一。它主要用于开发阶段的调试和问题验证。在开发过程中,开发者需要频繁地调用和测试单个接口,以确保接口的功能和性能符合预期。通过本框架的单接口测试功能,开发者可轻松地导入接口定义、请求参数等信息,并实时查看接口的响应结果。同时,框架还提供了详细的错误信息和日志记录功能,帮助开发者更好地理解接口的行为和性能。这不仅能够帮助开发者快速定位和解决接口问题,还能够提高开发效率和代码质量。

(2)组合场景测试。组合场景测试是测试框架中用于验收测试的重要功能。它主要用于模拟用户在实际使用中的操作场景,以验证系统在不同场景下的功能和性能是否满足预期。通过本框架的组合场景测试功能,测试人员可灵活地创建多个测试用例,并将它们组合成一个测试场景。每个测试用例可调用不同的接口,并设置不同的请求参数和预期结果。在测试执行过程中,框架会自动按照预设的顺序调用这些接口,并实时记录每个接口的响应结果。测试人员可通过查看测试结果和日志记录,来评估系统在不同场景下的功能和性能是否稳定可靠。此外,框架还支持多种测试模式(如顺序执行、并行执行等),以适应不同测试场景的需求。

(3)定期巡检。定期巡检是测试框架中用于日常测试的功能。它主要用于定期检查系统的功能和性能是否稳定可靠,及时发现和修复潜在的问题。通过本框架的定期巡检功能,测试人员可轻松地设置巡检周期和巡检内容,并自动执行巡检任务。在巡检过程中,测试框架会根据创建的测试计划自动从用例库中调用规划好的用例集进行日常巡检测试,验证服务器的输入输出是否符合预期,并实时记录每个接口的响应结果和性能数据。测试人员可通过查看巡检报告和日志记录,来了解系统的运行状态和潜在问题。此外,框架还支持将巡检结果以邮件、短信等方式通知相关人员,以便及时采取相应的措施。

(4)随机测试。随机测试是测试框架中用于模拟用户随机操作的功能。它主要用于测试系统在用户随机操作下的稳定性和可靠性,是一种类似Fuzz测试的鲁棒性测试行为。在测试执行过程中,框架会自动随机调用这些接口,并随机生成输入参数,并实时记录每个接口的响应结果和性能数据。由于随机测试具有不可预测性和多样性,因此它能够更全面地测试系统的功能和性能。测试人员可以通过查看随机测试结果和日志记录,来评估系统在用户随机操作下的稳定性和可靠性。

综上所述,本测试框架具备多种功能,能够满足不同测试需求和场景的需求。无论是开发阶段的调试和问题验证,还是验收测试、日常测试和随机测试,框架都能够提供相应的测试功能和工具,确保测试工作的顺利进行和软件质量的稳定性。

自动化测试方案在本项目中达成的效果

1. 提高测试效率与准确性。本项目涉及海量的数值计算,一般每次请求的数据有几百余条,如果按照传统的手工处理,需要将这些数据逐个人工计算并进行结果比对。虽然可采用excel设置公式的方法进行批量测试比对,但是每次数据请求、输出格式化等工作量也是比较繁重的,加之全市场股票基金数量的庞大基数,如果人工进行一次全覆盖的测试,工作量非常大,且又要进行对比测试,在新旧系统间反复切换,测试工作量与难度大到惊人。

在实施本自动化测试框架后,能够快速地执行大量的测试用例,根据输入值自动计算预期结果,自动格式化接口返回数据,并自动核对数据精度。据历史验收经验,熟练的测试人员每做一只股票的用例,从测试数据准备、预期结果计算、接口数据请求到最终数据核对至少需要10分钟。由于本方案的应用将上述过程完全自动化处理,测试人员只需要制定测试计划启动测试即可,显著缩短测试周期。特别是在算法服务器信创改造中,涉及大量复杂的测试场景,自动化测试可高效完成这些测试任务。

此外,如前文所提到的本服务涉及大量数据计算,且输入值是某个标的的历史行情,数据量庞大,自动化测试工具能够准确执行测试用例,避免人为因素导致的测试误差。在信创改造过程中,对测试结果的准确性要求极高,自动化测试可确保测试结果的准确性和一致性。

2. 降低测试成本与维护成本。自动化测试可减少对测试人员的依赖,降低人力成本。在信创改造项目中,测试任务繁重且复杂,自动化测试可显著减轻测试人员的工作负担。同时,自动化测试工具可重复使用,降低测试脚本的编写和维护成本。随着算法服务器信创改造的深入进行,测试需求可能会发生变化,自动化测试工具可灵活调整测试用例,降低维护成本。

目前在本次改造项目中,本服务的每次交付验证时间可控制在0.5人天以内,大大节约测试成本。

3. 增强测试覆盖率和稳定性。自动化测试技术凭借其强大的能力,能够广泛覆盖各类测试场景及边界条件,从而显著提升整体测试的覆盖率。在信创改造项目中,自动化测试通过预设的脚本和工具,能够高效执行各种复杂的测试任务,从而确保算法服务器的数据处理、算法执行、接口通信等关键功能都得到充分验证,确保算法服务器在信创环境下的稳定性和性能表现,从而满足业务需求。

此外,随机测试能够对服务的异常处理进行深入的验证。通过随机输入构造异常情况,可以帮助我们评估算法服务器在异常情况下的表现,并确保其能够迅速、准确地处理这些问题,从而保证服务的可靠性和鲁棒性。

在日常巡检方面,通过定期执行自动化测试脚本,可及时发现并解决算法服务器中可能存在的问题,从而确保服务的持续稳定运行。这种日常巡检机制有助于建立一种预防性的维护策略,降低服务中断的风险,提高用户的满意度和信任度。

未来展望

自动化测试方案在信创改造中的实践,不仅为当前的项目带来了显著的效率与质量提升,更为未来的测试工作开辟了广阔的前景。首先,针对信创改造中不断涌现的新服务接口,我们致力于构建标准化的用例输入模版。这一举措将极大推动新增服务接口测试用例的自动化生成,使得测试团队能够迅速响应业务变化,确保测试覆盖的全面性和及时性。通过标准化的模版,测试用例的编写将更加规范、高效,有效降低了人为错误,提升了测试质量。其次,我们将此自动化测试方案进行抽象,提炼出更高层级的模型。这一模型不仅适用于当前的信创改造项目,更具备跨项目应用的潜力。通过模块化、参数化的设计,可以轻松将此方案复制到其他项目中,实现测试资源的复用和测试流程的标准化。这将极大提升测试工作的灵活性和可扩展性,为未来的项目测试奠定坚实的基础。最后,我们计划引入大模型分析技术,利用AI对测试结果进行深入分析和处理。通过AI技术的支持,可以更加精准定位问题、预测潜在缺陷,为测试团队提供更有力的决策支持。这将使测试工作更智能化、高效化,进一步提升测试的质量和效率。

综上所述,自动化测试方案在信创改造实践的未来展望十分光明。我们将继续探索和创新,不断推动测试工作的自动化、智能化发展,为信创改造的成功实施提供强有力保障。

(此文刊发于《金融电子化》2025年6月上半月刊)

特别声明:[技术应用 | 浅谈自动化测试方案在算法服务器信创改造中的实践(技术应用的重要性)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

美国对407类钢铝衍生产品加税 关税清单范围广泛(美国对407类钢铝的态度)

美国商务部于8月19日宣布,将407个产品类别纳入钢铁和铝衍生产品关税清单,这些产品的钢铁和铝成分将被征收50%的关税。新增清单涵盖范围广泛,包括风力涡轮机及其部件、移动起重机、铁路车辆、家具、压缩机与泵类设备等数百种产品

美国对407类钢铝衍生产品加税 关税清单范围广泛(美国对407类钢铝的态度)

61岁李国庆再婚,感谢妻子只图人不图钱,张丹红穿白色婚纱太漂亮(李国庆老婆照片)

最终,他找到了张丹红,并在婚礼上深情表示:“我要选择一个不爱钱的人,当然也一定要爱我,谢谢老天的赏赐,谢谢张丹红,谢谢张丹红父母的教育。” 然而,李国庆和张丹红的幸福,却让人回望李国庆与前妻俞渝的过往时,感到…

61岁李国庆再婚,感谢妻子只图人不图钱,张丹红穿白色婚纱太漂亮(李国庆老婆照片)

天津积极推动民营经济发展(天津市推进什么什么什么和什么等社会信用体系建设)

熙瞳(天津)光电科技有限公司利用人社部门给企业与高校搭建的对接平台,实现“科技—人才—产业”的衔接。 在政策红利持续释放、产业生态日益完善的背景下,天津民营经济正以新质生产力为引擎,在高质量发展的赛道上加速奔…

天津积极推动民营经济发展(天津市推进什么什么什么和什么等社会信用体系建设)

明日上映!《青蛇》4K加长版预售亮眼 国粤双语再现美学巅峰(电视连续剧青肓)

导演徐克以极具开创性的东方美学语言,将《白蛇传》的传统母题改写为一段暧昧、魅惑、哲思并存的传奇故事;配乐由雷颂德、黄霑操刀,《流光飞舞》《莫呼洛迦》等经典旋律寄托了宿命轮回与人妖情劫的交错,至今仍让影迷记忆犹…

明日上映!《<strong>青蛇</strong>》4K加长版预售亮眼 国粤双语再现美学巅峰(电视连续剧青肓)

免密支付便捷正被不法利用 风险隐患频现(免密支付如何使用)

近日,话题“一定要关闭免密支付和自动扣款”冲上社交平台热搜,关于免密支付功能相关的讨论再次进入大众视野。多名网友在网络上发文称,自己的电子设备在开通免密支付功能后遭到盗刷,支付宝、微信等平台无故出现多笔扣费,累计金额从几千元到几万元不等

免密支付便捷正被不法利用 风险隐患频现(免密支付如何使用)