51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

测试开发精英班,通向高级软件测试工程师【周活动】 找茬--心里圈的故事 !【长期招募】博为峰网校招聘兼职讲师!横扫BAT,Python全栈测试开发技能大全
【106期】:如何树立正确使用Python做开发的习惯 【征稿】提交你的测试成绩单! 【专题】用尽一切办法只为让你学好用例 自学软件测试那点事
查看: 1135|回复: 2

精准测试白皮书v3.0-2019新版

[复制链接]
  • TA的每日心情
    开心
    2018-7-17 10:55
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    发表于 2019-3-27 17:10:33 | 显示全部楼层 |阅读模式
    本帖最后由 精准测试 于 2019-3-27 17:16 编辑

     
    现代社会是建立在各种以计算机为基石的软件技术基础之上的。随着日新月异的需求变化,软件系统越来越复杂。很多人觉得软件开发才是重要环节,但实际上,无法对大型软件进行有效的质量把控,就无法真正构建与维护大型软件。——系统中任何一个错误都可能导致整个系统的崩溃,造成无法弥补的损失,系统的任何一个微小的修改都可能引入新的缺陷导致维护困难重重。
     
    然而,如何从极端庞大复杂的系统中迅速及时地找到故障所在,却是行业的一大难点。目前国内软件测试基本处于两种状态:一是绝大多数企业采用功能(黑盒)测试,二是部分对软件产品有高可靠性要求的关键软件,企业会使用代码级的白盒测试工具,但这两种传统的测试办法在目前的软件智能化趋势下,更像是用竹竿打怪兽,完全没办法应付的。
     
    功能(黑盒)测试,测试者看不到程序内部逻辑结构,这种办法对软件可靠性要求不高的应用来讲问题不是很大,但是对于大型金融保险、工业软件、航天军工等关键系统就意味着时刻携带隐形的巨大风险。为此,功能测试后期需要极高的人力投入才能完成复杂逻辑的用例分析和设计。然而对于黑盒测试来说,由于我们无法获知内部的逻辑构造,程序越大,杀虫剂效应越明显。而行业内当作银弹的自动化测试,当自动化程序本身规模扩大以后,它的维护本身就存在了很严重的问题。
     
    代码级(白盒)测试工具一般重点应用在研发阶段的单元测试上,满足了客户的部分高可靠性需求,但由于其价格高昂、技术老化,仅适合于小规模迭代瀑布式开发的软件,无法完成复杂的系统级别的测试以及分布式基于云的测试,更无法适应敏捷迭代的开发模式。而且值得一提的是,目前白盒测试工具基本都是国外产品,通常这些产品无法完成深度的定制化功能以及快速的用户响应,代码安全也是一个较大的问题。
     
    随着国内军民各项大型核心软件系统的上马,研发一种面向高复杂度大型软件、自主可控的高性能智能精准测试平台,显得迫在眉睫。正是在这种时代背景下,2012年初,星云测试团队开始心无旁骛的研发征程。精准测试是个交叉学科,里面涉及到编译器、测试分析、图形技术、高性能通信与存储,软件的研发等多项底层技术。经历无数个不眠之夜对技术难点突破的煎熬与最佳解决方案的反复推敲,星云精准测试产品在诸多方面率先实现了重大技术创新,成功突破了白盒测试使用难度大、价格高昂的桎梏,有效消弭了国外高端测试产品垄断的壁垒。星云精准测试产品更偏向于软件测试业界的“灰盒测试”,即用简单的黑盒操作办法,可以同时得到单元级和系统级的精准测试数据。
     
    “星云精准测试”在众多性能上大幅超越国外进口高端白盒测试工具产品,并在数据追溯、覆盖率可视化、智能回归、智能缺陷定位、分布式数据穿透与追踪等特性上有突出贡献。“星云精准测试VIP大企业离线版云平台”在整体测试功能上的优异特性,成功获得了一批重要大型企业的高度认可及产品采购。
     
    星云精准测试的首发版本为:穿线测试ThreadingTest,2014年6月6日上线,侧重于系统级白盒测试技术,测试用例和代码逻辑的双向追溯技术,测试示波器技术,覆盖率可视化技术。2015年8月6日,“穿线测试”正式更名为“星云精准测试”。在继承穿线测试整体技术上,星云精准测试增强了回归测试用例的自动选取技术,缺陷最后执行时序分析、智能缺陷定位、敏捷环境下多版本白盒测试数据的聚合、聚类分析、结合代码结构与动态数据的测试漏洞检出、代码安全特性,全面的测试管理特性等几十种优秀功能。目前有“星云精准测试VIP大企业离线版云平台”、“星云精准测试PASS在线云平台www.teststars.cc“、“全自动测试用例驱动生成系统Wings”等多种工具产品。
     
    星云精准测试旗下产品平台有Horn、Paw、Shell、Wings等系列产品。适用语言和平台暂为:Java、Object-C、C89、C99、C++0X11、C#等;适用平台:Android、J2EE(、Web)、Java
    Desktop、iOS、MacOS、Linux(X86、X64、mips、arm、powerpc、UNIX(AIX)、VXworks、Windows(visualstudio.net)、Windows操作系统、WinCE嵌入式平台等。为响应广大用户的需求,目前正在进一步扩展适应的语言和平台覆盖面。
     
    通过精准测试,即继承了传统功能测试前期的高效率运行区间,又能在后期通过系统的数据,让开发、测试充分协同,完成全程高效的测试。
    (1)将测试团队的价值放大,能够将开发与测试更加紧密的连接起来,互为支撑。
    (2)采用精准、可信测试技术,测试管理的难度大幅度降低。
    (3)降低企业对人员的过度依赖,通过系统适应人员的变更。
                   图1-1 精准测试在大型系统的效率运行分析
    星云精准测试,既保证了传统功能测试前期的高效率运行区间,又能在后期通过系统的数据,让开发、测试充分协同,完成全程高效的自动化精准测试。
    第二章 精准测试的定义
    精准测试:是一种**首创的软件测试技术,旨在建立大型软件系统的测试数据与源代码之间高度的可视化追溯机制,实现精准缺陷预防及定位。它有力的打破了软件开发、测试、维护及管理人员等之间的数据交流屏障,支持超大型应用从开发、迭代、维护全流程的可视化精准测试跟踪和测试分析。即使是初级测试人员也能易于学习掌握,用黑盒测试的方法实现精准化测试。
     
    精准测试使软件测试从完全依赖人工记录、验证,转换为机器智能的全过程精准、可视、可信的全新检测模式。精准测试数据和黑盒测试优雅对接,在不改变常规测试流程的情况下,就可以获得大量的精准分析数据,并直接引导用户进行高效的后续测试与质量风险评估。用户手动“点测“或者与自动化对接被测试应用的同时,可以快速记录对应的代码执行逻辑并实施同步运算和分析,给出被测试应用的质量诊断报告。例如测试过程中的关键模块漏测分析、测试充分度度量、代码静态质量分析以及崩溃的代码级的捕获和分析等。
     
    精准测试有着超强的数据追溯机制,通过建立用例和代码运行时数据的映射关系,能够很好的协同开发和测试工作;它适用于当前流行的敏捷开发、测试体系,在版本迭代中,能够准确的计算出由于版本迭代影响和波及的测试用例,快速给出测试复杂度报告并核确定测试范围优先级,极大减少上线风险。在团队管理上,精准测试亦产出数十张过程及管理的不同剖面报表,以满足各级管理需求。

    第三章 精准测试的基础架构介绍3.1 精准测试的技术架构
     
    星云精准测试的技术架构:通过对源代码的插装分析出代码的静态结构信息,运行插装后的代码,测试工程师通过人工或自动化的执行用例,软件示波器通过采集到的这些数据,进行相关密集运算,得到测试数据。结合之前已有的代码静态结构信息,在星云客户端可实现用例与函数直接的互相追溯,再通过星云测试工具的企业项功能,缺陷定位、用例聚类分析、回归测试用例和最小测试用例集得到相应的测试数据,星云测试通过报表的形式展示测试数据,导出批量测试报告。
     
     精准测试从某个层面来讲,是赋予了测试用例真正的生命力,传统的测试用例仅仅是一些只能够依赖人去理解和分析的文本文件而已,在计算机和算法层面则没有存在意义和价值。下图是精准测试的整体架构图:
                     
                 图3-1-1 精准测试的总体架构图
     
    大家首先可能会比较好奇,“用例魔方”的概念是怎么来的?测试用例魔方是在精准测试的设计、开发和商业实践中自然产生的功能集合的一个统称。当我们把精准测试的和用例分析相关的功能画成架构图形表示的时候,它自然而然地看起来就像魔方,所谓“魔”则是精准测试核心算法所赋予的超能力。
    上图是星云精准测试系统的总体结构图,“测试魔方”即分布在左上角区域。大家知道精准测试的核心技术是测试用例与代码的追溯关系的建立,而在此之上就可以构建测试魔方的核心功能区。如下:
     

     
                      图3-1-2 精准测试的测试魔方
    所谓“方”实际上是代表测试用例的集合,每个测试用例用一个小方块标识,所有测试用例的集合用一个大方块。精准测试体系中,测试用例对应的代码逻辑都可以实现全自动的追溯和存储,因此测试用例就具备了进行深入分析的基础。在精准测试的用例魔方中,目前存在三个面(随着后续功能的增加,将增加分析的面),即回归测试用例选取、测试用例聚类分析、测试用最小化,同时辅之以智能缺陷定位技术。下面对精准测试的功能做详细的说明。
    3.2 软件示波器
      
    精准测试采集到的测试数据在软件示波器页面,通过可视化的窗口展示,实时展示采集到的块、条件和函数信息,在下方列表实时展示函数调用信息。软件示波器采集到的测试数据,完美实现了用例与代码的自动关联。通过测试数据的反向追溯分析,开发人员可进行一致性修改,避免修改引入新的缺陷,通过正向追溯结果,开发可对用例的执行进行全面掌握,可用于快速修复缺陷和详细实现确认。
     
    用例与代码的在追溯是精准测试的基础功能,后面的高级算法都在这个基础上展开,用例和代码的追溯就像一个全景的调试器,只要功能由测试人员进过运行,所有的内部代码执行逻辑瞬间就可以展示出来。
     
    软件示波器中的测试用例可以从现有的测试管理系统导入进来,当准备开始执行一个用例的时候,选中用例点击开始,然后驱动被测试系统运行,那么软件示波器就会采集到程序内部运行逻辑对应的波形信息,当用例执行结束,点击停止。这个用例运行阶段的数据,通过开始和结束的边界就记录下来了。
     
    软件示波器主要起到有效的可视化测试过程的作用。在执行用例过程中,如果没有采集到测试数据或者程序出现崩溃的情况,软件示波器就像人的心脏并没有跳动一样,一根横线拉直。正常采集到数据,将有持续的波形展示出来,高效而精准地监控到程序细微的运行状况。
     

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-17 10:55
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

     楼主| 发表于 2019-3-27 17:17:37 | 显示全部楼层
    精准测试白皮书完整版下载

    链接:https://pan.baidu.com/s/1R22KhkKkz_s-VgWLcVGw8Q
    提取码:n42j
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2019-9-16 08:23 , Processed in 0.061248 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2019 Comsenz Inc.

    快速回复 返回顶部 返回列表