什么是测试自动化框架呢?顾名思义,就是用于测试自动化的框架。具体来说,它提供了自动化测试用例编写、自动化测试用例执行、自动化测试报告生成等基础功能。我们只需要基于这个框架,完成和业务高度相关的测试用例设计和实现即可。另外,框架会为我们处理好复杂度与扩展性的问题,我们无需为此操心。

在某一领域,经常存在着多种类型的框架。测试自动化也不例外。那么,有哪些种类的测试自动化框架呢?它们各自有什么特点?

线性框架:

指录制和回放(play and record)框架。在这种框架中,测试人员通常不需要编写测试脚本,只需要录制某一次测试的过程(自动生成测试脚本),然后在后续的测试中回放这次录制的结果(执行测试脚本)即可。线性框架最大的好处是无须手动编写测试代码,因此门槛较低、易于上手。然而线性框架的不足之处也很明显:录制的脚本是固定的(hardcode)。这意味着,当应用发生微小变化时,上一次录制的脚本可能就无法使用了,需要重新录制(rework),从而产生大量的后期维护成本。

数据驱动框架:

在数据驱动框架中,测试数据和测试脚本是分离的。在许多测试场景中,需要使用不同的测试数据多次测试同一功能或特性。如果测试数据是hardcode进测试脚本的,那么每更换一次测试数据都需要修改测试脚本。这是很大的工作量。此时,可以使用数据驱动框架。具体来说,测试脚本是固定的,而测试数据可以从外部的数据文件,以Excel、CSV、SQL等形式作为参数传入测试脚本。这样,我们只需要维护一份脚本和一份数据文件即可。总体来说,这种框架最大的好处就是易于维护。但是识别与格式化数据、编写通用测试脚本等需要花费技术和时间。

关键词驱动框架:

在关键词驱动框架中,测试数据和测试脚本也是分离的。不同的是,这个框架更进一步地将测试脚本中的通用功能剥离出来,形成关键词(keyword)。测试脚本本质上就是对一系列通用的或者自定义的关键词的调用。这样做的好处是关键词可以在多个测试中复用,并且测试脚本更加易于维护。不过,实现这样一个框架并非易事。

除了上述三种类型,测试自动化框架还有:模块化框架、库结构框架、混合框架等类型。

泽众软件推出的AutoTestFramework(简称:ATF)是B/S架构框架,可实现Selenium等多种自动化测试全流程、团队化管理的高级框架平台,通过集成自动化测试工具可实现PC端界面自动化、接口自动化、APP功能自动化测试和深度兼容性测试,测试完成后系统自动生成测试报告。其主要功能模块包括需求管理、脚本管理、用例管理、执行控制器、执行日志,报告报表等模块;部署简单,界面简洁,操作灵活。