关键词:
软件测试
自动化测试
自动化测试框架
B/S系统自动化测试框架
摘要:
随着B/S系统的飞速普及,大数据、云计算的时代来临,B/S系统也随之变得越来越复杂化、多样化。传统的手动化测试已经无法满足B/S系统测试的需求,自动化测试则得到了极大的发挥空间。自动化测试能够减轻测试人员的压力,并且能够提高测试的效率以及降低测试的成本。但是目前自动化测试,尤其是B/S系统的自动化测试有诸多问题。主要表现在以下几点:(1)测试成本高,许多测试工具价格都非常高。(2)前台页面经常修改,由于前台页面的修改导致经常需要修改脚本。(3)许多自动化测试工具没有分层,这样会使得业务测试脚本编写效率低,如果业务流程发生变化会导致许多业务测试脚本失败,并且自动化测试的维护成本会变大。此外,没有分层会使得测试逻辑与其他无关代码相掺杂,很难辨别出测试逻辑。(4)测试数据,目前大多数的自动化测试工具都没有集成从数据库中来读取大量测试数据的功能。而数据库在海量数据的管理以及检索上有着极大的优势。根据上述的这些问题,目前的一些自动化测试工具都只覆盖了一些基础的功能,往往不能够同时解决上述的这些问题。所以,本自动化测试框架的目的就是要解决这些问题。本框架通过分成五层结构将编写业务测试脚本的效率大大提高并且降低了维护的成本:整合了读取数据库的功能,使得在面对海量测试数据时能够提高测试数据检索的效率:利用了Selenium这个开源工具能够很好的定位前台页面元素,解决了由于前台页面更改而导致业务测试脚本的频繁更改。通过分析我们选择了Selenium、Junit、Mybatis为主要技术核心来搭建自动化测试框架,并对本自动化测试框架进行分层。Selenium是一款针对B/S系统的开源自动化测试工具,它是免费的。Selenium有很好的兼容性、强大的功能以及可控性高,并且提供了多种查找对应页面元素的方法,以应对经常变更的前台页面。Junit4作为一个事实上的标准测试框架,在本自动化测试框架的控制层中起到了关键作用,并且它还提供了参数化测试的功能,用于将数据和脚本分离。同时本框架中的Mybatis乍为一个读写数据库的工具,能够将数据库中的数据读取出来作为脚本的参数,从而使本框架能够进行大批测试数据量的测试脚本运行而不必修改脚本。并且可以直接通过被测试的B/S系统的数据库拿来作为测试数据源,从而尽可能的进行真实环境中的模拟。本论文主要是以一个继续教育平台为主要测试网站。在测试过程中,本自动化测试框架主要用于回归性测试。由于本框架进行了分层,所以在进行脚本编写、组织以及维护上十分便捷。通过使用本框架读取测试数据源进行用户登录、视频学习、学时查询、考试等环节的测试内容,很好的完成了测试任务。并且通过继续教育平台的数据库,能够模拟真实情况下的系统运转情况。从而减轻了测试人员的压力,提高了测试效率,降低了测试成本。证实本自动化测试框架能够完成自动化测试、回归性测试的测试任务。