广东移动软件质量检测平台方案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

软件质量检测平台2012年05月2汇报提纲13方案和过程介绍质量检测平台2质量检测平台价值3保障软件质量,确保个人提交不会影响集成1应对需求变化,突发压力下能及时交付产品2建立一套自动体系,降低运维难度和成本3端到端提升关键环节的工作效率4降低人员变更对开发过程带来的影响5项目背景业务支持系统的软件规模日益庞大,应用环境日益复杂,新业务需求层出不穷,旧业务不断更新优化。4无侵入式的质量检测2质量检测的标准化3开发商的交付质量对比4问题定位和运维成本的降低5及时的软件质量检测1建设目标内建的质量保障体系6高开放性的平台75质量检测功能架构图代码扫描项目配置策略管理度量统计邮件中心用户管理角色管理系统管理监控界面及功能服务器管理构建监控数据库监控配置中心取代码配置调度配置反馈配置系统配置版本监控邮件管理配置管理回归测试单元测试分析中心权限管理分类分析质量分析定义代码规范自动部署服务器管理版本管理发布部署调度中心用户行为查询系统安全自动测试脚本管理用例管理测试跟踪客户端展示用例管理脚本管理客户端展示结果展示编译监控数据收集菜单管理权限项管理通信证管理日志管理接口管理业务应用跟踪监控数据配置BUG分析统计报表数据处理报告管理业务分析异常行为用户监控异常行为用户处理扫描配置测试跟踪联系人管理内容管理邮件日志管理维护界面应用监控自动化构建6NGBOSS质量检测过程质量检测平台Step1:从配置库取代码Step2:调度静态代码扫描扫代码Step3:调度完成单元测试Step4:自动编译Step5:自动部署Step6:自动回归测试每一步自动出报告7网络总体结构8网络内部结构配置中心调度中心分析中心9汇报提纲13方案和过程介绍质量检测平台2质量检测平台价值10质量检测平台价值-减少风险缺陷的检测和修复变得更快软件的健康程度可以测量减少假定11生成可部署的软件利用CI,可以经常对源代码进行一些小的改动,并将这些改动与其他代码进行集成。如果出现问题,项目成员会接到通知,软件会立即得到修复。而不采用CI实践的项目可能需要到交付之前对软件进行集成和测试CI12减少重复过程案例分析减少重复过程可以节省时间,费用和工作量。这些重复的过程可能在所有项目活动中发生,包括代码编译,数据库集成,测试,审查,部署和反馈13增强项目的可见性有效的决策Product86%95%注意到趋势代码测试覆盖率代码提交量14提升开发商能力、效率节省开发时间质量检测可以检测出不规范的编码,通过该检测功能可以提高开发人员的代码编写规范通过质量检测平台对项目源代码的扫描,检测,可以实时发现源代码中存在的错误和漏洞;提高开发商开发能力和效率预防错误编码遵守编码规范通过在客户端安装代码扫描软件,可以跟IDE开发工具结合起来,实时检测开发过程中的错误,预防错误编码质量检测平台可以实实时捕获开发过程中的错误,并给出详细描述,可以为开发人员节省修改的时间15建立起产品信心总的来说有效地应用CI实践能够在开发软件产品时带来更大的信心。对于每一次构建,团队成员都知道软件会通过测试验证其行为,项目的编码标准和设计标准得到遵守,得到的结果是在功能上可测试的产品没有频繁的集成,某些会感到压抑因为他们不知道代码的修改造成的影响。因为CI系统能够在出问题时发出通知,开发者和其他团队成员在进行修改时就更有信心。而且CI提倡所有软件资产构建时使用单一的来源,大家在准确性方面也更有信心.16汇报提纲13方案和过程介绍质量检测平台2质量检测平台价值17自动取代码配置中心调度中心质量检测服务器1:检测到代码更新:2:通知更新带代码Checkout报告3:提取代码取代码的结果输出18自动代码扫描通过代码扫描可以对整个项目的质量有个一个直观的认识,通过对扫描结果的分析监控项目的质量和进度,尽早的控制项目的风险。自动代码扫描能将大部分代码错误封闭在开发阶段,节省大量的后期成本和返工成本。自动代码扫描可以覆盖绝大部分产品,使用简单快捷,完全不影响现有工作。在质量监控平台上设置了定时任务,该平台会每天定时进行代码的扫描工作,并生成代码扫描报告,报告如下图。19自动代码扫描•方法复杂度的扫描结果报告20自动代码扫描•报告中出现的前十大问题:包括问题出现的个数及对应的错误代码Top10问题列表修复与未完成报告•从下图中可以看到分析发现1791个问题,已经修复的个数为638个;后续的报告根据开发商的实际修复问题个数该图会有相应的更新:21自动代码编译•自动代码编译通过编写项目的构建脚本,实现自动代码编译,让整个项目随时是可构建的,杜绝风险的引入项目名称代码行数构建持续时间java1500失败31毫秒NGBOSS25000成功109毫秒•质量监控平台会定时的执行项目构建脚本,实现自动编译构建成功的后台输出22分析中心库(保存系统核心数据,支持各种分析)错误类型分析:可分析出项目中的各种错误类型及其占比情况错误修复数据分析每次质量检测之后会分析上次的错误的修复情况方法复杂度分析:分析项目中的方法复杂度并生成图表可定制的代码分析:支持用户定制代码分析分析中心库安全漏洞分析:检测出项目中存在的安全漏洞及风险23管理前台在后台功能搭建的基础上,为了降低操作的难度,增加易用性,我们后续将设计前台交互页面,在可视化的环境下,监控整个项目的质量24管理前台-自动编译25管理前台-单元测试26管理前台-部署发布27管理前台-回归测试28管理前台-审查反馈29管理前台-缺陷密度30管理前台-缺陷密度变化趋势31管理前台-缺陷类型分布32管理前台-缺陷一次解决率33管理前台-平均问题封闭周期34平台规划自动单元/回归测试01开发商测试监管03自动部署02完成质量监控平台的单元测试功能,关注于20%核心代码,保证代码质量,同时实现自动化回归测试测试用例管理测试结果跟踪管理测试用例自动调度实现对测试人员环境,用户测试环境,和生产环境的自动部署功能35平台规划—单元测试通过对当前系统的分析,制定测试计划,编写相应的测试用例和测试脚本,运行测试,实现自动化测试,在测试结束后生产测试报告文档单元测试完成对代码的单元测试,生成测试报告•测试用例•测试脚本质量监控平台36平台规划—单元测试质量监控平台任何一个指标都有运行次数和通过率报告,如下左图;横轴表示该指标的测试时间(以天为单位),左纵轴对应柱状数据,表示该指标对于某一天的测试次数,右纵轴对应蓝色曲线,表示该指标对于某一天的测试通过率指标运行次数和通过率报告平台规划37平台规划—单元测试单元测试报告中包含了最近一次成功及失败测试的情况,测试结果趋势等信息.如下图单元测试报告38平台规划—回归测试编写测试脚本编写测试用例制定回归测试策略通过自动回归测试,可以降低系统测试,维护升级的成本;同步生成测试分析报告.•流程步骤•制定回归测试策略•编写测试脚本•编写测试用例•对应用程序做测试自动回归测试39平台规划—回归测试回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试.在回归测试报告中包含概述和详细结果两部分,如下图;上半部分是整体信息,包括被测项目名称,测试时间,测试用例总个数,成功个数;下半部分列举了每个用例的测试结果,执行步骤数目回归测试报告40平台规划—自动部署将部署操作脚本化,并进行部署验证测试各类环境尽可能相似,并使部署脚本通用化对环境管理进行版本控制,杜绝了对生产环境的手工直接修改部署操作脚本化对环境管理进行版本控制部署脚本通用化质量监控平台-自动部署41平台规划—自动部署自动部署完成后质量监控平台会有相应的报告生成,可查看相应的部署发布情况对测试环境的部署,以及代码测试覆盖率等指标的体现可以查看下图左相对于不可重复且不可靠、易出错的手工部署过程,自动部署引进软件复用的概念,检查重复代码,重构代码结构,提高代码效率.同时生成相应报告42监管开发商的测试工作,是否完善、有效、高质•提供程序质量问题登记•提供缺陷状态跟踪•确保问题的封闭,保证质量监管中心----测试用例调度单元测试用例回归测试用例----测试结果跟踪管理单元测试结果管理回归测试结果管理----测试用例管理单元测试用例回归测试用例平台规划—开发商测试监管43单元测试集成测试测试环境统一管理统一自动部署生产系统自动检查未来展望测试环境自动部署回归测试生产环境自动部署环境自动检查数据自动检查自动拨测感谢聆听!Thanksforyourtime!

1 / 44
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功