你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:技术专栏 / Web开发
软件测试2.0-ThreadingTest数字化企业测试私有云探秘
 
继2014年6月6日ThreadingTest发布穿线测试理念以及全球移动端白盒测试工具个人基础版后,TT团队应一些大型企业更高标准的测试需求, 全力秘密打造企业级测试应用:ThreadingTest Cloud-数字化企业私有测试云平台(简称TTC)。此版本将于近期向公众发布,本文提前向伙伴们做一简要介绍和分享。
TTC企业测试私有云有众多炫目亮点,先介绍三个重磅特点让大家先睹为快:
1. 深度解决软件测试短板,数字化跟踪、追溯、输出测试每一步信息;
2. 数字化展示企业分布式开发与测试过程、验收和维护全过程;
3.测试报表精准细致、岗位权限设置完美到位、数据信息保护措施完备。
互联网强大的心跳,每时每刻都向人们输出着让人眼花缭乱的应用,炫耀、比拼着各自的新、奇、特。慢一步,可能就意味着失去了站在 风口的机会。于是互联网企业日夜比拼着:看谁的迭代能力更快,看谁的应用体验更好。大小企业们都不得不花费重金,集结大量的资源 ,进行高密度的开发与测试。然而,究竟效果如何?我们通过长久以来的大量实践可以看到,由于软件测试工具力量的薄弱,导致隐性缺 陷的追踪与复现极为困难,开发工程师往往对于测试工程师描述的缺陷一头雾水,无从下手。业内普遍使用的黑盒测试工具有个致命的短板,就是在发现“前70%”的显著缺陷后,很快就会后劲不足,查错效率变得异常缓慢。在“后30%”的测试过程中,团队往往需要花数倍 的人力与物力去验证一些核心模块的正确性,但效果却差强人意。测试工程师们面对庞大而错综复杂的应用程序,往往在心理上就已经投降。就算职业修养非常高,尽职尽责地反复进行人工排查,但测试与调试的有效性由于没有数据的验证与支撑,结果也是值得商榷的。人海战术vs海量数据,那种被淹没的窒息感,同行们都会有深入骨髓的体验。在伟大的智能计算机时代,极为重要的软件测试工作,依然用 着刀耕火种的苦B工作方法,显然让人崩溃和抓狂。软件测试行业如同打游戏一样,急需强大工具进行自我武装、升级。
本文介绍的TTC 企业测试私有云非常前沿的数字化测试技术,让测试界同仁眼前一亮。
TTC请普通测试工程师用简单的黑盒测试办法先快速排除“前70%”的显著性错误,然后,把层层嵌套、相互制约的复杂逻辑分析任 务交给计算机处理。计算机对海量数据快速、严谨、漂亮的处理能力,是人类的勤勉难以企及的。TTC把测试工程师做的每个测试用 例的程序执行细节,快速进行原生化的数字生成、归类和存储,并即时开展大量的后台运算和分析。它可以从测试、管理、维护,甚至 开发与需求等不同维度,对项目进行全方位的数字化分析,然后输出完美的分析报表。项目管理者如同阅读财务报表一样方便:把需要 密切注意和调整的问题标注出来,交给实施部门即可。实施部门通过TTC报表进行数据对接和信息回溯,快速聚焦靶心信息,落实调 整方案。整个过程一气呵成,完美弥补了人工沟通与交互可能出现歧义的局限性。
TTC 针对项目岗位管理权限的不同要求,对岗位权限进行专业设置,不同岗位权限可调用的信息是被严格区分的。如:普通测试工 程师,核心测试工程师、测试管理者等。企业管理者可以根据项目岗位与开发、管理的关联度,轻松设置使用权限。TTC的国家发明专利 技术“TT示波器”彻底杜绝了关键信息泄露的可能性。
另外,大型企业一般都会涉及到分布式开发与测试的问题,TTC在分布式测试的表现尤为值得关注。它在架构上分为客户端软件和企业 测试私有云端平台,用户通过客户端平台作为媒介,接收被测试移动应用产生的测试数据并实时同步到私有云平台,云平台进行数据的计算 、共享,以提供团队本地多人、异地多人等形式的分布式数字化测试支持。TTC私有云端提供Web功能接口,无需安装任何软件,就可以快 速的浏览TTC平台对原始测试数据的全方位的分析和对测试的质量、进度进行数字化跟踪。企业管理者可以通过企业测试私有云平台随时调用 测评数据、实时远程协同、异地测试和数据查询分析、测试数据全局共享等。一举解决了测试数据分散割裂、不统一的管理弊病。
TTC企业测试私有云平台还有很多其它优异的技术特性,如:快速追踪并定位软件中隐蔽性极强的BUG缺陷、高效解决迭代维护及 回归测试难问题、通过接口和自动化测试工具、单元测试工具对接等等。在此TTC技术概览一文中就不做详述,想进一步了解的伙伴们, 很快可以在即将开放的官网中阅读相关资料:www.teststars.cc
TTC企业测试私有云平台的适用范围:TTC平台首版将支持各种类型的安卓应用的测试,包括但不限于:企业APP、常规移动应用、 车联网智驾应用、手机游戏以及机顶盒应用等。同时支持企业级J2EE应用,可以对大型的应用网站进行测试。 TTC企业测试私有云平台适用场景:应用委托方对软件开发与测试的量化考核、甲方对第三方开发和测试团队进行外包商管理、 企业管理层对于应用测试、质量进行全面的掌控和分析决策。
接下来,本文将向大家简要介绍有关于TTC企业测试私有云平台如何使用、它无需源代码的测试过程、TTC在企业授权后如何面向 工程师实施代码与测试用例的双向追溯、TTC面向企业管理者的精美报表等内容。
一、TTC企业测试私有云平台如何使用
TTC的操作非常简单:它不改变测试人员的原有测试操作。只要开发工程师使用TTC编译工具对代码进行插装处理后,交付打包生成后的APK或 相应文件给测试工程师即可。测试人员只需三步操作:1、打开TTC示波器,2、运行APK包(或相应文件),3、直接进行原有的“点、点、点” 或自动化操作。此时,TTC将通过测试示波器把测试过程进行转换并传输到TTC信息共享平台中,自动关联测试人员、测试用例、测试覆盖率、 测试设备、以及代码等。TTC根据企业的岗位分工和权限设置,提供给使用者不同的信息。例如:普通测试工程师只能看到总体的测试覆盖率信息 而无法看到具体的代码信息;高级(核心)测试工程师可以得到TTC可视化的测试结果分析,以此与开发工程师进行数字化信息交互,对程序进行 调整和优化;项目管理者可以实时获得测试与开发的工作进展和成果的详细报表。(参见图1、图2)
TTC企业版私有云测试
图1-TTC安卓版企业测试私有云测试使用示意图
TTC企业版私有云测试
图2-TTC安卓版企业测试私有云直观的测试使用示意图
二、无需源代码的测试过程
TTC拥有国家级专利技术的TT测试示波器,它如同一个完美的中间件,把测试与代码两者隔离开来。应用程序实施测试时,只需要开发工程师提供编译 后的文件,测试工程师不需源码即可获得相关统计类和指标类的数据。我们通过TT 示波器,可以非常直观的看到各种程序逻辑执行的速率、频率等 信息。如果需要结合源代码显示更为详细的测试信息,可以选择开通相应的权限,进行动态关联、读取详细信息。
TTC示波器也是快速定位隐藏极深的BUG的有力武器。它在接收数据过程中可以对接收的函数进行时间排序,这个功能为测试人员快速定位BUG起到决定 性的作用。在传统的黑盒测试中出现一个BUG时,测试人员需要描述测试场景、截图或视频、日志等,然后寻找开发进行分析和定位,但是由于有些缺 陷很难复现、或因人工误操作描述不详细等错误,往往使得开发人员花费大量的精力进行Debug。而通过TTC测试,当应用程序出现崩溃点和错误时, 测试或开发人员可以通过TT最后接收的函数信息,结合测试人员最后运行的场景,快速发现测试人员操作轨迹,并加以定位,大大缩短因BUG产生的额 外工作量。(参见图3)
TTC示波器可以辅助进行等价类判断。为了确保软件具有更高的可靠性,测试用例往往需要反复执行。在传统黑盒测试中,测试人员进行等价类测试只 能通过最后的输出结果加以判断不同的输入是否为等价类,条件不够充分。TT示波器可以对每一步操作施行数字化的转换,从而对不同输入的测试指 标进行精准对比,辅助进行等价类判断等。
TTC示波器可以进行程序行为变更的分析。通过对比示波器记录的用例上次运行指标和本次的运行指标(参见图4),可以判断对应的功能逻辑是否发 生变化,并进行重点分析和回归测试,确保程序行为的变化可以被有效跟踪并对因此而可能产生的缺陷进行有效预防。
TTC 的Wild Testing适用于多种测试场景。由于TT示波器支持各种真机和模拟器等移动设备、WIFI、蓝牙、USB等多种通讯方式,因此应用程序不管在 室内封闭的测试环境中还是在户外的移动环境中,测试人员都能通过TTC进行有效测试。TTC的示波器诞生不仅让原先枯燥的测试变的生动有趣,也为TTC奠 定了它可以在行业内施行新型测试技术大推广的坚实基础。
ThreadingTestCloud(TTC)示波器
图3-TTC示波器
三、TTC在企业授权后,面向工程师实施代码与测试用例的双向追溯
什么是代码与测试用例的双向追溯?即:在TTC中运行一个测试用例后,通过程序,它可以自动回溯到这个测试用例执行的代码。反之,如果测试用户 关注某一些代码行,它可以追溯出哪些测试用例在运行过程中跑过这段代码,并高亮显示出来给使用者。
正向追溯技术:
通过点击某个测试用例,追溯到该用例所对应的函数控制图,并展示其测试的逻辑和结构,点击其中某个函数,可以进行该函数的覆盖率、复杂度、 代码、控制流程图等信息查看,帮助测试人员通过简单查看发现测试遗漏,有利于开发人员直接定位测试发现的缺陷,实现测试和开发之间的高效互 动。因此,即使核心开发工程师离职时,整个应用程序的设计与开发思路依然清晰的保留在TTC里。交接者通过TT的正向追溯,可以快速了解测试用 例所展现的程序逻辑和结构等信息,快速理解和掌握程序的开发思路。
逆向追溯技术:
通过点击函数列表的某个函数,追溯到该函数所对应的函数调用图、控制流程图以及源码,点击其中的源码,反向追溯到该源码所执行过的测试用例 列表。通常情况下,当应用程序需要进行快速迭代时,测试人员往往无法精确判断代码变更后的影响面,只能对程序进行大量的回归测试,耗神费力 。但通过逆向追溯,测试人员可以清晰的看到由于代码变更而影响到的测试用例表,从而进行一致性修改。
我们知道软件开发的两大核心阵营是开发和测试,两大阵营要求的技术专长各不相同。长久以来,开发和测试之间的交流途径基本凭口头描述或EXCE L表格进行人工核对。由于缺乏合适工具造成的信息不对称,极大影响了双方的工作效率,是IT领域里苦无良医的恶疾。即使是CMMI体系,也只是提 出概念,并无实实在在的工具落实。
TTC的”源码与测试用例的双向追溯“专利技术,使开发和测试界跨过了这条沟通鸿沟,“天堑变通途”。双向追溯技术如同全景调试器一样,记录 了每个测试用例对应的程序内部的执行细节,细致到每个条件,分支,语句块的执行情况。开发人员可以通过双向追溯的结果去理解程序逻辑,进行 软件维护以及进行可一致性的修改,优雅而轻松地解决了开发和测试最头痛的缺陷复现难题,大大提升了测试和开发的交流效率。
TTC把每个测试工程师的每个测试用例进行量化分析和统计。这些量化数据既可以用来对测试结果以及测试过程进行审核,也能帮助测试人员 从数字化分析角度反观测试用例设计是否合理、执行的测试用例是否不足。极大的弥补了由于测试人员自身的经验、能力、精神状况等因素, 影响到的测试质量。管理者们也可以对症下药,拟定有针对性的学习计划、快速培养,使梯队成员水准即使在有限的时间里,都可以得到大 幅提高。(参见图4)
ThreadingTestCloud(TTC)报表
图4-代码与测试用例的双向追溯
四、TTC面向企业管理者的精美、精确报表
1、测试数据的原生化和自动化生成
TTC把原来很多需要人工录入的数据,由平台代为自动化机器处理,确保所有的数据都是客观、不可篡改的。企业管理人员可以利用机器原生数据 ,对测试全过程进行精准的数字化管理(参见图5、图6、图7)。
ThreadingTestCloud(TTC)报表
图5-TTC数字化平台报表-测试用例详细关联报表
ThreadingTestCloud(TTC)报表
图6 TTC数字化平台报表-移动设备与BUG关联报表
测试人员只需在测试结束后提交相关BUG到TTC平台,平台就能自动把测试用例、测试设备、测试数据、测试人员、测试时间等信息进行关联分析 (见图6),大大缩短了因人工描述失真而导致的企业损失。
ThreadingTestCloud(TTC)报表
图7-TTC数字化平台报表-BUG与移动设备、测试人员、测试用例的对应分析报
2、系统级覆盖率分析报表
测试覆盖率是测试界公认的最佳的是测试结项的可用指标。在黑盒测试中,测试人员需要充分了解需求后逐渐细化到小功能,进行测试用例的设计, 然后通过测试过程中出现的问题以及和客户的交流再加以完善,这样的过程过度依赖个人经验和能力等因素,并且也不一定能达到完美的效果。 在白盒测试中,测试流程需要对每条代码、每个语句、每个判断进行运行分析,测试周期冗长,大多企业无法承受。
TTC把大量复杂的运算放在后台,用户界面简单易用。首先,测试人员用传统黑盒测试方法把基本的功能都点测一轮,排除掉大约70%左右的初级BUG ;随后,利用TTC云平台进行数据分析与排查。第三步,根据分析数据报表,快速、有针对性地补充测试用例,达成覆盖率管理的实际要求,做到有 理有据、心中有数。
TTC 覆盖率形式多样(参见图8),最高支持航天航空标准MC/DC的100%覆盖率要求,并且提供了全新的覆盖率每日增长趋势图。项目管理者可以通过 该报表清晰的观察整个测试进度情况,TTC平台的覆盖率趋势图对于团队的质量控制具有很好的指导意义,它能够让高级管理人员对测试进度进行预判 ,也能够对测试效率进行有效的识别,例如通过对覆盖率增长曲线的拟合,可判断按照目前进度能够在上线日期到达前能够一个合理的测试水准; 通过覆盖率增长是否走平,可判断是否达到黑盒测试的极限区,主动地进行测试策略的调整。
同时通过函数|类|文件复杂度和覆盖率关系图了解那些高复杂度的函数的覆盖率指标,这些测试数据的展示分析能够让项目管理人员更好的把控整个 测试的节奏,进行测试规划(参加图9)。
Tips:覆盖率指标是否要每项都到100%才能算测试通过呢?在这方面TTC没有对原有测试有着强制的要求,如MCDC覆盖率100%的实现是相当困难的, TTC给出的数字化的覆盖率展示的用意在于让测试人员通过观察能更好的补充完善测试用例,对于核心模块TTC建议覆盖率指标越高与越好(只有当你 每条代码、判断、条件都运行过、无错误,才能算该功能测试充分),而根据每个项目的测试周期的不同,测试人员也可自己设置覆盖率指标通过雷 达图进行测试结算(见图10)。
ThreadingTestCloud(TTC)报表
图8-TTC数字化平台报表-覆盖率支持表
ThreadingTestCloud(TTC)报表
图9-TTC数字化平台报表-覆盖率每日增长趋势图与整体覆盖率和复杂对关系图等
ThreadingTestCloud(TTC)报表
图10-TTC数字化平台报表-函数覆盖率列表与雷达图
3、运行环境、测试人员、测试日期的关联情况汇总报表
在传统黑盒测试条件下,当多款移动主流设备运行同一个测试用例进行深度兼容性测试,由于测试项目因设备的不足或分配,以及多设备测试用例的运行 状况模糊等情况,测试团队需要花费大量的时间去记录和调试,往往事倍功半。
TTC能自动识别测试设备、测试人员、测试用例等信息,并自动关联对应信息。因此,项目管理者可以充分了解整个项目的硬件资源使用、测试人员任务 分配及测试进度等情况,并做数字化分析、管理和再调整。(参见图11)
ThreadingTestCloud(TTC)报表
图11-TTC数字化平台报表-测试人数、移动设备、测试日期关联汇总报表
4、复杂度报表
TTC平台中给出了函数复杂度预警报告表和复杂度详细列表,通过这2张报表,测试人员或开发人员能迅速的掌握被测程序的复杂度情况,对于安全 系数高的客户,测试人员可以要求开发进行重新设计降低风险(参见图12、图13)。
ThreadingTestCloud(TTC)报表
图12-TTC数字化平台报表-复杂度预警图
ThreadingTestCloud(TTC)报表
图13-TTC数字化平台报表-复杂度详细列表
5、分布式、协同测试
TTC为了对数字化管理进行有效的数据采集,采用了分布式的测试方式,让不同区域、不同时间的测试人员实现协同测试与协同管理,最终达到多 人同地测试、多人异地测试、数据实时汇总共享与追踪、测试过程与完成度一目了然。
ThreadingTestCloud(TTC)报表
图14-TTC数字化平台总报表
软件测试博大精深,我们仅仅先行了第一步。TTC企业测试私有云还拥有强大的爆发力,它通过对软件测试全过程的数字化处理与分析,可以进行 各种复杂条件的读取、判断和预测。希望TTC将来呈现给广大用户的,是用极简约、优美的界面操作,完成用户的多种测试需求。未来,TTC 多语言一站式的解决方案将渐次推出。
“天下之难作于易,天下之大作于细”,扎实打好基本功,防微杜渐,互联网的各种更炫酷的应用才会有更稳定可靠的扩展根基。数据之美,无远弗 界。只要我们抓住它们最为本质的东西为我们所用,海量数据就能迸发出令人炫目的能量。人类不应该被困在数据的海洋中苦苦挣扎,我们需要在分 析和创造中升华,点亮智慧的光芒。
有关于TTC的介绍及最新信息,敬请关注微信公众号:Threadingtest,也可以加入符号执行QQ群(目前该群已经有1800余人,主要推广数字化 软件测试技术),意在能够传播测试新理论与新工具。
  推荐精品文章

·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 
·2023年7月目录
·2023年6月目录 
·2023年5月目录
·2023年4月目录 
·2023年3月目录 
·2023年2月目录 
·2023年1月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089