Created
Aug 20, 2024 12:27 AM
Favorite
Favorite
Priority
备注
推荐
🌟🌟🌟🌟🌟
类型
模型测试
精彩推荐
文丨中国邮政储蓄银行软件研发中心
张世哲 杨恩民 方铭浩
中国信息通信研究院 马龙飞
伴随大模型技术的日渐成熟,智能化测试迎来了新一轮发展机遇,在进一步提升自动化测试水平的基础上,有效解决了测试分析方法效率低、质量差等难点问题。顺应这一趋势,邮储银行通过在测试用例、思维导图、自动化脚本生成等场景落地大模型应用,初步探索测试智能化的实现路径,并前瞻性展望了软件测试领域的后续发展方向。
随着大模型技术的不断发展,人工智能的应用范围也变得愈加广泛。以金融测试领域为例,尽管自动化测试在提升效率、降低成本等方面成效显著,但其对人员能力要求相对较高,且测试周期不断压缩等因素也为自动化脚本的规范化编写和维护带来了巨大挑战,甚至制约了软件测试的快速发展。面向上述挑战,邮储银行基于多年积累的测试数据和知识,针对性训练软件测试领域的L2级别私有化大语言测试模型,并在测试用例、思维导图、自动化脚本生成等场景开展落地实践。
一、私有化大语言测试模型
技术特点
在软件测试领域,现阶段流程主要包含需求分析、单元测试代码设计、测试大纲/思维导图设计、测试用例设计、自动化脚本设计、测试数据准备等环节。在实际工作中,测试人员往往要花费大量时间研读需求,才能了解业务流程和测试要点,进而设计出好的用例,而测试质量也在很大程度上取决于测试人员的全局思维能力和逻辑判断能力。如今,大模型技术的出现为软件测试发展提供了全新机遇,通过将大模型技术应用在测试领域相关场景,测试人员将可快速批量分析业务需求,并且经过专有领域数据训练和微调,还可实现L2级的模型部署,针对测试领域各种不同的应用场景,完成更准确、更复杂的推理任务。
具体而言,私有化大语言测试模型可显著提升三方面能力:一是实现高度自动化,即通过学习大量数据,自动提取特征并进行精准分析,实现测试过程的高度自动化,节省人力资源,降低时间成本;二是提高测试准确性和覆盖率,即通过对测试数据进行全面分析和预测,并从中捕捉更多的测试场景和用例,可有效发现更多的潜在问题;三是支持决策制定,即通过多维度分析测试结果和相关数据,提供客观、准确的数据信息来支持决策制定,辅助提高测试策略的有效性和项目管理的决策能力。
二、L2级别测试大模型优化实践
顺应智能化测试需求,邮储银行使用Prompt和Fine-tuning训练开源大模型,通过LangChain进行本地化部署,成功搭建了L2级别的智能化测试大模型。
1.L2级别的训练和微调
当前,尽管测试大模型可有效提升测试效率,输出结果也比较客观,但其对测试领域的特有数据及词汇仍存在理解差异,而若要训练一个专有领域的大模型,又往往受制于算力资源、高质量数据等因素难以快速实现。对此,邮储银行在初步私有化部署阶段,通过将小批量的测试用例、测试领域内部标准规范文件、需求文档、测试知识等作为原始语料,采取Prompt和Fine-tuning技术相结合的方式对模型进行了调优及增量训练,进而充分利用预先训练的模型在大规模数据集上学习到的特征提取能力和模式识别能力,在新数据上获得更好的性能表现,不仅避免了从头开始训练需准备大量高质量数据的难题,也节省了项目整体耗时和计算资源。实践中,通过构建合理的Prompt工程在对话过程中不断生成和修正答案,使测试大模型具备了更高的对话质量;与此同时,通过搭建基于LangChain框架的知识库(如图1所示),将大语言模型与具有邮储银行测试工作特色的知识库、计算逻辑相结合,高效实现了对测试资产的智能化整合利用,进一步提高了输出结果的准确率。
notion image
图1 基于LangChain框架的知识库使用流程
2.Web端优化工程
实际操作中,由于测试大模型的可解释性较差,很多测试人员不了解如何规范化得出效果最佳的问题答案。对此,邮储银行通过对原生问答界面进行二次开发,构建Prompt模板进行调试,形成了语义理解的最佳方案,并在页面引入定制化模板对所有人员的输入情况进行匹配,进一步优化使用逻辑,实现了更为顺畅的人机沟通(如图2所示)。
notion image
图2 Web工程界面
三、邮储银行测试大模型落地探索
为检验测试大模型的应用实效,邮储银行选择手机银行的测试过程开展落地实践,取得了良好效果。
1.测试用例生成
手机银行的测试工作在传统模式下是由测试人员分析需求规格说明书,再输出测试用例。针对该过程,邮储银行选择对其中一个需求进行对比验证,即通过向大模型输入业务需求描述,并要求其输出测试用例。实践中,大模型仅耗时10余秒即完成数千字的需求分析,并生成了相应功能点的测试用例,涵盖功能要点、描述、操作步骤和预期结果等信息(如图3所示)。从结果来看,该用例基本满足了测试用例的编写要求,即使存在一些覆盖面不全或者反向验证点不充足的情况,也可通过进一步的约束条件输入,进行补充描述,从而得出更准确的答案。目前,邮储银行已在实际项目中完成了测试大模型的部署应用,基于“AI研读需求—生成初版大纲—测试人员阅读生成大纲—进行补充优化”的流程设计,大幅缩减了测试用例编写时间。
notion image
图4 大模型生成的需求思维导图
图3 大模型生成的测试用例
2.需求思维导图生成
在手机银行测试过程中,邮储银行发现部分功能需求的原始需求描述在转化为规范标准的需求规格说明书时,有时因时间间隔或其他原因,需求规格说明书中绘制的流程图部分内容会较简略。对此,邮储银行通过使用大模型分析原始需求描述,再将生产流程图与需求规格说明书进行比对,帮助测试人员更好地理解测试流程及需求。实际操作中,由于测试大模型现阶段无法直接生成思维导图、流程图等,因此可以通过生成Markdown语句,并使用第三方工具将其转换为思维导图文件进行保存(如图4所示)。实践表明,测试大模型能够分析需求并将其转化为流程图和思维导图,不仅可大幅缩短测试人员的需求分析时间,还有助于提升测试质量。
notion image
图4 大模型生成的需求思维导图
3.自动化测试脚本生成
在功能测试方面,受限于项目上线周期、自动化测试水平等客观因素,邮储银行的自动化测试质量及使用频率均具有较大的提升空间。为改善这一情况,邮储银行尝试将接口、用例、测试数据等信息导入大模型,基于大模型提供的逻辑推理能力,通过分析接口和用例,生成单接口自动化脚本和相应的场景自动化脚本,以提高集成测试效率和覆盖率。例如,在手机银行某项功能的接口响应验证中,邮储银行通过调用大模型API接口,直接生成了接口自动化测试脚本(如图5所示)。
notion image
图5 大模型生成的自动化测试脚本
4.单元测试代码注释及检查
传统模式下,单元测试分析通常依赖于编译产物,即在实施过程中需对项目进行编译后才能生成单元测试用例,客观上提高了测试所需的前置准备要求。对此,邮储银行基于测试大模型,使单元测试可以直接分析源码,扩展了单元测试的适用场景,并在使用高质量的训练数据进行微调后,提升了大模型单元测试的覆盖率。
四、未来展望
综上所述,邮储银行构建的L2级测试大模型不仅在实践中取得了良好的应用成效,还为软件测试智能化升级提供了技术基础。未来,随着大模型技术的不断发展和优化,测试大模型将能够更为自动化地执行分析任务,并基于更加复杂、精细的模型结构不断提升测试质量和效果;此外,通过与软件测试平台对接,还可形成更为完整的测试解决方案,提供更加全面、更具连续性的测试支持,甚至与增强现实、虚拟现实等技术相结合,为测试分析提供更加直观、交互性更强的环境支持,加强测试人员与系统之间的交互和理解。
后续,邮储银行将在实践中更加关注模型的可解释性研究,针对测试大模型的推理过程和生成结果,持续引入高质量的测试数据开展模型训练,并利用增量训练、全参微调等手段,不断提高测试结果的可信度和可靠性;同时,还将面向特定场景,构建更大规模、更加多样化的测试数据集,以使大模型能更好地适应具体的测试需求,并持续探索大模型在制式文件生成等方面的应用价值,加速推动软件测试向智能化方向发展。
本文刊于《中国金融电脑》2024年第2期
《中国金融电脑》杂志征稿启事
征稿栏目:数字化发展、数据能力、IT实践、信息安全。
我们期待您的原创文章,文章以3000~6000字为宜。
投稿邮箱:fcc@fcc.com.cn
联系电话:010-51915111-816
《中国金融电脑》服务于金融科技领域专业人士,积极传播金融科技管理理念与最新应用成果,推动金融科技与业务部门的融合创新,促进金融机构与IT行业的沟通交流。
特别提示
《中国金融电脑》杂志不收取作者版面费用,不会以所谓的“本刊代理/编辑部”或“发表定金”“手续费”等名义收取费用。购刊收款账户为对公账户,请勿对任何个人账户汇款。另,本刊开具发票不收取任何额外费用。如有异常,请作者立即与本刊编辑部查证核实,以免给自身造成风险或损失。
本刊编辑部联系方式:
010-51915111-816
投稿邮箱:
fcc@fcc.com.cn
市场合作:
010-51915111-813
010-51915111-812
010-51915111-826
Loading...