上海品茶

您的当前位置:上海品茶 > 报告分类 > PDF报告下载

A2--王文皓--金融软件系统质量可信评估.pdf

编号:152031 PDF 44页 16.38MB 下载积分:VIP专享
下载报告请您先登录!

A2--王文皓--金融软件系统质量可信评估.pdf

1、金融软件系统质量可信评估王文皓恒生电子股份有限公司王文皓负责自动化测试、精准测试和效能平台的研发。曾就职于华为技术有限公司和中国电信。至今已拥有超10年的软件测试和开发的从业经验。参与信通院发布的精准测试平台能力要求标准的撰写。本次演讲课题金融软件质量可信评估曾获证券期货业金融科技研究发展中心2021年度研究课题的三等奖。恒生电子-技术平台效能TDU 测试开发专家嘉宾照片目录CONTENTS背景介绍背景介绍01 解决方案解决方案02 关键关键技术技术03 实践效果实践效果04 思考思考和展望和展望05 01背景介绍背景介绍业务架构复杂,变更评估困难用例规模庞大,回归周期短质量无法量化,测试的效

2、果无法客观评价准确地给出版本的变更影响分析精准用例推荐和高效回归将软件的质量风险以数字化方式量化地评价现 状挑 战02解决方案何为质量可信研发过程可追述 通过测试技术手段将研发过程对外体现和展示,包括本次开发的代码、SQL文件以及配置管理过程中的日志信息,测试的过程中展示出对应的设计和分析的依据。并能结合变更内容、历史缺陷、质量特性、人员画像推荐出对应的测试用例。测试结果可量化 从代码覆盖率、业务功能覆盖率、质量特性覆盖率层面进行评价,建立金融软件质量可信评估的计算模型,对质量给出客观的量化评价。可信评估系统的建模可信度评价指标 =,A为测试充分性评价指标,C为代码的分支覆盖率,B为功能业务覆

3、盖率,F为质量特性覆盖率,r为各个CBF的权重值。=1+2+3 =,100%=100%=100%其中=13=1,Part(T,pi)为用例集T所对应的分支覆盖数,Part(pi)为总分支数,r1、r2、r3根据各个产品自身特点合理分配系数。金融软件行业,由于其强业务需求特点,取r1=50%,r2=30%,r3=20%可信评估系统的使用场景设计开发阶段 评估修改可能带来的系统影响范围,预防因评估不充分导致的漏改、错改。测试阶段 评估真实变更影响范围,避免因评估不足导致的漏测。依据变更精准地推荐用例,缩减测试范围,实时地展示用例执行过程中代码覆盖率地变化情况做到测试过程可信。发布阶段 发布可信评估

4、报告,让实施/维护/客户对本次升级可能带来的影响和测试结果以及覆盖情况有全面清晰地了解,让客户对我们质量更放心需解决的关键技术03关键技术1.变更分析依赖的技术手段:git loggit blamegit blame-reverse抽象语法树AST技术 EclipseJDT or JavaPrase6cedb914CSTPT-0001 a4e70a159CSTPT-00028c5adcbeCSTPT-00032015d40cCSTPT-0004目标:分析出集成在测试包内的每一个任务单(需求)对应改动代码、SQL和开发者。1.变更分析git blame显示作者最后新增和修改文件的每一行信息表示区

5、间内行内容无修改13行、20-22行为修改内容,结合语法树可得出归属的函数。git blame-reverse它不是显示一行出现的修订,而是显示一行存在的最后修订17行为删除行,展示的是该行的前一次commitId1.变更分析-表分析u MyBatis APIXMLMapperBuilder、XMLStatementBuilder结合反射技术构造Dao层的实体参数,将属性递归赋值,还原出对应的SQL语句。u Druid通过Parser,AST,Visitor将SQL语句进行分析,提取出使用的数据库表名目标:不仅考虑代码的变更,同时将数据库表结构的变化、SQL语句变化也纳入变更分析的范围。1.变

6、更分析-表分析u JDT针对特定持久层框架DAO层注解含义,结合AST技术,提取对应的数据库表名称。1.变更分析-表分析u针对不同数据库操作方式采用不用方式建立DAO层函数和SQL语句的关系。u解析SQL语法,获取表名以及列名等信息。u建立DAO层函数和数据库表名的关系u针对不同数据库操作方式采用不用方式建立DAO层函数和SQL语句的关系。u解析SQL语法,获取表名以及列名等信息。u建立DAO层函数和数据库表名的关系1.变更分析-系统参数分析u对常量类、枚举类进行解析,获取出特定的系统参数常量值;uAST语法树分析获取函数调用的系统参数常量或枚举,进而获取对应的系统参数编号;u建立函数和系统参

7、数在Neo4j中的关系TABLE_RELATION;1.变更分析-影响面分析函数表参数调用链路接口功能菜单业务变更元数据通过与函数相关联,结合后续推导出的完整调用链路,将变更对象和接口相关联。再结合从元数据管控平台获取的接口-功能-菜单-业务的关系,进而精准的分析出变更对象对函数、接口、功能、菜单和业务的影响。2.源码插桩Jacoco(Condition Coverage)Gcov(Condition Coverage)Hundsun(Condition Decision Coverage)Jacoco、Gcov无法直观地展示出每个条件的真假和整个判定语句的真和假。2.源码插桩算法不改变原程序

8、逻辑 通过抽象语法树(AST)对程序进行分析,将判定语句、条件表达式进行插桩扩展,算法并不改变原程序执行逻辑。条件-判断覆盖 hs_cdc_t函数,hs_cdc_f函数分别标识真假判断,同时变量hs_cond_n_0和 hs_cond_n_1的值标识各自的条件真假。目标:一套算法适用于多种语言(JAVA/CPP),详细感知每个条件和路径地真假覆盖情况。2.源码插桩a 1|b 1?hs_cond_n0!=(hs_cond_n0=1):hs_cond_n0=(hs_cond_n0=0)|b 40人天05思考和展望思考和展望模型中,各类覆盖是否采用,权重值,需根据业务特性和系统架构分别定义。当前采用的评估模型,根据恒生某系统的研发过程和技术架构定义,有一定的特殊性,其完善通用模型需要进一步探索。当前代码与用例的关系建立在函数的维度上,粒度稍粗,更精细化的做法是关联到分支上,依据控制流的变化来决定用例的推荐,更精细化基于研发人员的画像(年限、能力等),历史数据(缺陷密度、缺陷级别等)对质量评估的维度进行扩展,对模型进行学习和评价。通过对源码、SQL进行扫描分析,提前分析软件方面的缺陷以及安全漏洞、合规方面的风险,主动进行告警提醒。完善模型AI&大数据分支推荐风险提醒 Q&A欢迎与我们交流感谢聆听关注QECon公众号

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(A2--王文皓--金融软件系统质量可信评估.pdf)为本站 (2200) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
会员购买
客服

专属顾问

商务合作

机构入驻、侵权投诉、商务合作

服务号

三个皮匠报告官方公众号

回到顶部