导读:精准测试是一个软件测试界最新的测试技术,它的高效与精准性为使用者所称赞,但如果公司已经有了一些开发测试管理系统,如何最大化减少学习成本,悄无声息的进行“精准测试”技术的升级改造?本文以Jira系统为例,给出了详实可信的技术解决方案。
精准测试是目前系统级测试的一匹黑马,它比白盒测试使用起来简单,但功能更强大,普通黑盒测试工程师也能轻松掌握。另外,使用它的同时,由于测试数据收集的细致与完整性,也为用户带来一个极具价值的战略性资源--测试大数据,因此很多企业非常重视精准测试对本单位软件系统测试技术的升级作用。
精准测试最核心的技术关键就是:用例和相关执行代码之间有很强的对应和追溯关系。这个强追溯关系的建立,通过精准测试专属客户端上的“软件示波器“,用人工点击开始和结束按钮来标记测试用例的执行,进而确定对应代码执行路径的边界。
但是,目前很多公司内部都有开发测试管理系统或者类似于JIRA这样的通用产品来管理和执行用例,如果同步使用精准测试客户端,则有指令重复之嫌。因此,星云精准测试做了具有深远意义的客户化改进-“静默式“精准测试。它可平滑实现JIRA系统与精准测试的幕后对接方案:JIRA中的用例执行指令从后台直接传递给精准系统,测试工程师不用改变任何日常工作行为。这一里程碑式的改进办法,使得几乎全部依赖人工、数据不可见的黑盒测试,突破天花板成为具备系统质量分析高度可视化的有力抓手。实现了企业在“不知不觉中”彻底提高黑盒测试整体效能的大目标。
“静默式“精准测试的创新,使系统内部可智能获取精准测试的基础数据,完成测试用例与代码覆盖的追溯关系建立。下图是精准测试(星云测试www.teststars.cc 的ThreadingTest产品系列)与JIRA系统对接的架构示意图:
现在,就“静默式“精准测试的技术原理做进一步解析阐述:
由于JIRA的前端基于velocity模板技术开发,它本身也在不断升级迭代,为避免对JIRA本身运行系统造成干扰,我们采用了替换VM模版的技术方案,即通过JIRA前端页面,将用例执行数据发送给星云TT系统。对接采用异步方式,在TT后台服务链路不开启的情况下也不影响JIRA本身的运行,完全实现高靠性、静默、零干扰的精准测试目标。
第一步:JIRA端定制代码将当前执行的测试用例名称,用户名,以及项目名称传递给一个对接中转平台,对接中转平台将数据转换为TTFront可识别的命令发送给TTFront,TTFront收到命令以后,会根据指令中的用户信息,得到对应用户所登录的客户端的IP地址(星云TT系统中用户登录后,其IP会自动记录在TTfront端)。
第二步:将对应的命令分发到对应的用户,组织成TTC命令结构方式发送(属于TT精准测试的客户端自动化指令集),触发客户端直接执行相关操作(包括用例的自动创建),例如点击用例开始等动作。当用例开启后,便可以全自动实现原有精准测试的手动操作流程。
由于程序版本和星云精准测试生成的版本需要有一个对应关系,以前是由客户端由测试人员手动选择,在静默模式下,通过活动版本的设置,自动加载版本。用例将自动在星云TT系统中创建,无需导入和同步等二次动作。
Jira与星云精准测试对接的步骤展示:
-
未开始测试界面的状态:星云测试的软件示波器缩略会显示在界面上,在没有开启和执行用例之前示波器实时采集覆盖率的状态值均为0。
-
开始用例并进行数据结束:当开始执行用例后,通过JIRA 与TT系统的对接,TT系统自动创建了用例,并且处于等待数据接收状态,当用户在JIRA系统选择好要执行的用例,并到被测试系统实际执行用例时,安装在客户端的示波器浮动窗就会开始显示进行对应用例的覆盖率采集。浮动窗会默认显示在测试人员桌面的最前方,半透明的模式不会对被测试应用产生遮挡。
示波器数据接收展示:打开星云软件示波器窗口,可以看到示波器接收数据的波形已经创建好,当前选择的测试用例的所有信息已接收清晰而完整。
由此可以看出,使用者不用在“星云客户端”上实施任何操作,即可实现精准测试数据的静默式记录、传输与分析。星云测试“静默式精准测试“技术的发布,为各领域实现企业级精准测试技术改造和能力提升,打下坚实基础。