
本发明涉及程序测试技术领域,尤其涉及一种浏览器兼容性测试系统及方法.
背景技术:
随着IT行业的繁荣,当前的浏览器软件形势极为复杂. 有各种类型的浏览器和许多版本. 这导致在测试网页时需要进行复杂的兼容性测试. 目前正在进行兼容性. 两种测试方法是:
1)一台PC安装了多种型号的浏览器进行测试;
2)多台PC均安装了用于测试的浏览器.
由于自动网页测试将垄断整个过程,并且同一台PC上安装的多个浏览器容易发生环境冲突,因此上述兼容性测试方法1)并不理想,但上述测试方法2)不理想将消耗大量的硬件资源.
技术实现要素:
本发明克服了现有技术的不足,提供了一种浏览器兼容性测试系统和方法,用于解决兼容性测试过程中环境隔离和资源浪费的问题.
考虑到现有技术的上述问题,根据本发明的一个方面,本发明采用以下技术方案:
浏览器兼容性测试系统,包括:
用户交互界面模块,用于实现与用户的交互;

文件管理模块用于管理上传的测试脚本,并将测试脚本上传到部署测试环境的容器中;
Docker映像模块,用于存储预先生成的引擎Docker映像,该Docker映像包含用于在运行时启动容器的测试环境以及用于在启动容器时运行目标测试脚本的操作说明;
容器管理模块用于管理和运行每个要测试安装的浏览器的测试环境的Docker镜像,以便在容器的测试环境中运行目标测试脚本,并在容器中实现等待测试终端连接到主机. 测试浏览器测试,并能够并行启动两个或多个容器进行测试;
结果处理模块,用于获取容器在运行测试脚本的过程中生成的结果文件,并将其反馈给用户交互界面进行显示和/或下载.
为了更好地实施本发明,进一步的技术方案是:
根据本发明的实施例,结果文件包括日志文件.
根据本发明的另一实施例,结果处理模块对日志文件进行分析处理,得到测试报告.
根据本发明的另一个实施例,结果处理模块将日志文件和/或测试报告反馈给用户交互界面.
根据本发明的另一实施例,所述用户交互界面模块还包括:
输入用户指令,上传测试脚本,管理历史脚本和历史测试数据.
根据本发明的另一个实施例,测试脚本包括: 生成命令菜单和测试数据脚本.

本发明还可以是:
浏览器兼容性测试方法,包括:
第1步: 在用户交互界面中操作,上传测试脚本或调用历史脚本;
步骤2: 用户选择要测试的浏览器,测试系统将存储在Docker映像模块中的对应映像调用到容器管理模块;
步骤3: 容器管理模块启动在步骤2中计划的Docker映像,并检查启动结果的环境;
步骤4: 测试系统通过文件管理模块将测试脚本上传到测试系统,并调用容器中的浏览器进行测试,并实时反馈测试进度;
步骤5: 测试系统通过结果处理模块获得测试结果,并将其反馈给用户交互界面. 用户通过交互界面查看,管理和下载测试结果.
根据本发明的另一个实施例,上述步骤3还包括对启动结果的环境检测.
根据本发明的另一个实施例,上述步骤4还包括存储测试结果.
根据本发明的另一个实施例,上述结果处理模块从存储中获取测试结果. 与现有技术相比,本发明的有益效果之一是:
本发明的浏览器兼容性测试系统和方法利用了基于Docker的操作环境与外界完全隔离的特点,保持了数据隔离并减少了测试资源的占用,具体来说: 1)有效减少了硬件资源的消耗. 提高资源利用率; 2)有效隔离同一环境下的数据干扰和污染; 3)测试脚本可以在多个环境中并行运行,从而提高测试效率.

图纸说明
为了更清楚地描述现有技术中的应用文件或技术方案的实施例,下面将简要介绍在实施例或现有技术的描述中需要使用的附图. 显然,以下描述中的附图仅参考本申请文件中的一些实施例. 对于本领域技术人员而言,无需创造性劳动,也可以从这些附图中获得其他附图.
图. 图1是根据本发明实施例的系统结构的框图.
图2是根据本发明实施例的方法的框图.
具体的实现方法
下面结合实施例更详细地描述本发明,但是本发明的实施方式不限于此.
图1是根据本发明实施例的系统结构的框图. 如图1所示,浏览器兼容性测试系统包括:
用户交互界面,用于输入用户指令,上传测试脚本,管理历史脚本和历史测试数据等,实现与用户的交互;
文件管理模块,用于管理上传脚本并将其上传到部署测试环境的容器中;
Docker映像模块,用于存储容器引擎的预先生成的Docker映像. Docker映像包含在运行时启动的容器的测试环境,以及在容器启动时运行目标测试脚本的操作说明;
容器管理模块,用于管理和运行安装了每个被测浏览器测试环境的Docker镜像启动容器,从而在容器的测试环境中运行目标测试脚本,并实现测试终端的连接到主机要测试浏览器,用户可以通过该模块并行启动多个容器进行测试;

结果处理模块用于在运行测试脚本的过程中获取由容器生成的结果文件,对其进行分析并将其处理为更具可读性的测试报告,并将其反馈给用户界面以进行显示和下载
使用Docker容器集成方法,在Docker中部署要测试的浏览器和脚本测试所需的组件以形成Docker集成测试环境,然后通过交互式界面上传测试脚本和测试命令以进行测试操作.
测试脚本包括: 命令菜单生成,测试数据脚本等.
主机部署测试系统并使用Docker映像构建独立的测试环境.
用户可以通过前端交互式界面管理测试脚本,测试结果,测试数据等.
图2是根据本发明实施例的方法的流程图. 如图2所示,浏览器兼容性测试方法包括:
步骤1: 在用户交互界面上操作,配置相关测试参数,上传脚本或调用历史脚本进行测试;
步骤2: 用户选择要测试的浏览器,测试系统将存储在Docker映像模块中的相应Docker映像调用到容器管理模块以准备启动;
步骤3: 容器管理模块启动在步骤2中安排的Docker映像,并对启动结果执行一些环境测试,以确保容器正确启动以供测试系统使用;
步骤4: 测试系统通过文件管理模块将测试脚本上传到Docker容器,并调用容器中的浏览器进行测试,实时反馈测试进度,并存储测试结果
步骤5: 测试系统通过结果处理模块获取步骤4中存储的测试结果,并反馈给用户交互界面,用户通过交互界面查看,管理和下载测试结果.
综上所述,本发明的测试服务器获得了预先生成的容器引擎Docker镜像,该镜像包含运行时启动的容器的测试环境,以及在运行时启动目标测试脚本的操作指令. 容器启动;镜像,启动一个容器以运行客户端通过容器测试环境中的交互界面提供的目标测试脚本,以实现对要测试的浏览器的自动测试;测试完成后,获取容器运行目标测试脚本的过程. 生成的日志文件用于分析要测试的应用程序的测试结果;最后,测试系统将测试结果和日志数据反馈到交互界面,供显示和下载.
基于Docker的运行环境与外界完全隔离的特征,本发明在容器中运行自动化测试脚本,不仅实现了对被测试浏览器的测试,而且还确保了测试脚本不会损坏主机的文件系统.
本说明书中的每个实施例着重于与其他实施例的不同,并且各个实施例之间的相同或相似部分可以彼此参考. 在本说明书中提到的“一个实施例”,“另一实施例”,“实施例”等是指与实施例结合描述的特定特征,结构或特性包括在本申请的一般描述中. 实施例. 在说明书中的多个地方出现相同的表达不一定指相同的实施例. 此内.
尽管已经参考本发明的多个说明性实施例描述了本发明,但是应当理解,本领域技术人员可以设计许多其他修改和实施方式,并且这些修改和实施方式将落入本发明的范围内. 申请公开原则的范围和精神. 更具体地,在本申请的公开和权利要求的范围内,可以对主题组合布局的组成部分和/或布局进行各种修改和改进. 除了修改和改进组成部分和/或布局外,其他用途对于本领域技术人员来说也是显而易见的.
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shumachanpin/article-305580-1.html
专家说
到那时候反客为主怎么办