CN113419965A - 一种多浏览器兼容性测试***及方法 - Google Patents
一种多浏览器兼容性测试***及方法 Download PDFInfo
- Publication number
- CN113419965A CN113419965A CN202110798964.5A CN202110798964A CN113419965A CN 113419965 A CN113419965 A CN 113419965A CN 202110798964 A CN202110798964 A CN 202110798964A CN 113419965 A CN113419965 A CN 113419965A
- Authority
- CN
- China
- Prior art keywords
- test
- management module
- state
- node
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 472
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000013515 script Methods 0.000 claims abstract description 74
- 238000012544 monitoring process Methods 0.000 claims abstract description 41
- 238000004590 computer program Methods 0.000 claims description 18
- 230000000007 visual effect Effects 0.000 claims description 11
- 230000008676 import Effects 0.000 claims description 10
- 230000007246 mechanism Effects 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 claims description 9
- 230000002159 abnormal effect Effects 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 8
- 230000007547 defect Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提出了一种多浏览器兼容性测试***及方法,涉及浏览器兼容测试技术领域,该***包括:测试脚本录制模块部署在测试终端节点上,用于录制多浏览器兼容性测试脚本;测试案例管理模块,用于批量导入测试案例;测试调度管理模块,用于根据测试案例及测试脚本进行测试任务的分配;测试终端管理模块,用于配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;状态实时监测模块,用于采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块进行监控及调度管理;本发明具备全自动化测试,资源占用量低,执行效率高,用户体验好,脚本可自由定制,有效提高前端整体兼容性测试质量。
Description
技术领域
本发明涉及浏览器兼容测试技术领域,尤指一种多浏览器兼容性测试***及方法。
背景技术
浏览器是互联网产品客户端的核心软件,也是网站访问时所需使用到的必备软件。在现有技术中,前端开发人员在进行多浏览器兼容测试时,一般采用以下三种技术方案:
一、本地安装大量的虚拟机,一个浏览器一个虚拟机,这种方式极其消耗硬盘资源,大量占用CPU时间片,会造成进程拥堵,页面打开缓慢,并且面临无法同时打开多个虚拟机;
二、使用IeTester等模拟测试软件,虽相比较方式一占用资源比较少,但是测试结果不真实,模拟特性无法反应浏览器真实情况
三、部署公用机器提供多种浏览器,这种方式资源利用率低,整体资源消耗非常大。
在上述三种技术方案中,第一种方案依赖于本地安装大量虚拟机,然而目标测试浏览器数量大,故需建立大量虚拟机,这种方式非常消耗硬件资源,大量占用CPU资源,甚至造成服务器卡顿,进程拥堵,测试效率很低。第二种方案依赖于IeTester等软件对浏览器兼容性做模拟测试,无法反应出浏览器真实兼容性问题,测试结果真实度较低。第三种方案依赖于大量部署公用机,专门安装各浏览器进行测试,这种方式浪费大量硬件资源及开发人力资源,效率低,等效于零自动化。
综上所述,现有前端多浏览器兼容测试方式,存在资源占用量大,测试结果不完整,测试结果真实度低,耗费技术人力资源,无法与全开发生命周期整合等技术问题,亟需一种可以克服该些缺陷的技术方案。
发明内容
为解决现有技术存在的问题,本发明提出了一种多浏览器兼容性测试***及方法。本发明可以实现全自动化测试,资源占用量低,执行效率高,用户体验佳,脚本可定制等优点,大大解放前端开发人员测试压力,提高前端整体兼容性测试质量。
在本发明实施例的第一方面,提出了一种多浏览器兼容性测试***,该***包括:测试脚本录制模块、测试案例管理模块、测试调度管理模块、测试终端管理模块及状态实时监测模块;其中,
所述测试脚本录制模块部署在测试终端节点上,用于录制多浏览器兼容性测试脚本,并将测试脚本上传至测试案例管理模块;
所述测试案例管理模块,用于批量导入测试案例,定时向测试调度管理模块推送测试案例及测试脚本;
所述测试调度管理模块,用于根据测试案例及测试脚本进行测试任务的分配;其中,依据测试节点资源占用情况与任务执行情况进行统一调度,使测试节点资源与测试任务匹配,将测试任务分发至相应的测试节点;
所述测试终端管理模块,用于配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;
所述状态实时监测模块,用于采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块进行监控及调度管理。
进一步的,所述测试脚本录制模块具体用于:
通过UI Recorder同步录制开发人员在测试终端节点输入的多浏览器兼容性测试脚本,并支持WebDriver协议标准。
进一步的,所述测试案例管理模块具体用于:
建立测试案例库,并提供可视化界面及批量导入接口;其中,由开发人员利用可视化界面输入测试案例或利用批量导入接口批量导入测试案例,所述测试案例存储于测试案例库。
进一步的,所述测试调度管理模块还用于:
获取状态实时监测模块发送的状态结果,根据所述状态结果生成测试案例分析报表,展示测试案例执行成功率与失败原因;
当状态结果中出现执行状态异常时,对测试任务进行自动调试。
进一步的,所述测试终端管理模块具体用于:
通过Windows Server云技术及Windows Server多用户机制,扩建执行机节点,并配置底层虚拟机资源调用策略。
进一步的,所述测试终端管理模块还用于:
在进行测试任务时,并发进行多个测试任务,实时返回多浏览器兼容性测试动画至测试脚本录制模块,展示给测试人员。
进一步的,所述测试终端管理模块还用于:
设置状态输出接口,供状态实时监测模块实时采集测试节点执行任务的状态及测试节点资源状态。
进一步的,所述状态实时监测模块具体用于:
利用Guacamole组件对测试节点执行任务的状态进行实时采集。
在本发明实施例的第二方面,提出了一种多浏览器兼容性测试方法,该方法包括:
将测试脚本录制模块部署在测试终端节点上,通过测试脚本录制模块录制多浏览器兼容性测试脚本,并将测试脚本上传至测试案例管理模块;
通过测试案例管理模块,批量导入测试案例,定时向测试调度管理模块推送测试案例及测试脚本;
通过测试调度管理模块,根据测试案例及测试脚本进行测试任务的分配;其中,依据测试节点资源占用情况与任务执行情况进行统一调度,使测试节点资源与测试任务匹配,将测试任务分发至相应的测试节点;
通过测试终端管理模块,配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;
通过状态实时监测模块,采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块进行监控及调度管理。
在本发明实施例的第三方面,提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现多浏览器兼容性测试方法。
在本发明实施例的第四方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现多浏览器兼容性测试方法。
本发明提出的多浏览器兼容性测试***及方法将测试全流程有效解耦为五个模块进行实现:测试脚本录制,测试案例管理,测试调度管理,测试终端管理及状态实时监测,克服了现有测试过程中耗费人力,硬件资源,环境不真实,数据不完整等弊端,能够极大简化开发人员编写测试案例的过程,还原真实生产环境下操作流程,测试案例的导入方式操作简单,体验良好,节省人力,在管理测试终端时能够实现物理资源的最大化利用,通过多用户机制创建出大量测试节点,具备高可用,高并行特性,测试效率大幅度提升,在测试过程中还可以实时采集、监测任务执行状态,对测试进程进行调度决策,整体测试过程实现了端到端的可配置化全自动兼容性测试,提供非常友好的用户体验,极大的提高测试效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明一实施例的多浏览器兼容性测试***架构示意图。
图2是本发明一具体实施例的多浏览器兼容性测试***的架构关系示意图。
图3是本发明一具体实施例的多浏览器兼容性测试***的自动化测试流程示意图。
图4是本发明一实施例的多浏览器兼容性测试方法流程示意图。
图5是本发明一实施例的计算机设备结构示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种***、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种多浏览器兼容性测试***及方法,涉及浏览器兼容测试技术领域。本发明基于自动化测试技术,并结合Windows Server技术,深度使用Guacamole、HostsShare等解决方案,通过Karma+F2etest核心框架机制,构建一体式的多浏览器兼容性测试***,具备全自动化测试,资源占用量低,执行效率高,用户体验佳,脚本可定制等优点,大大解放前端开发人员测试压力,提高前端整体兼容性测试质量。
在本发明实施例中,需要说明的术语有:
虚拟机:通过软件层面对计算机硬件资源做出抽象,并实现虚机之间资源隔离的一种技术,该***具备功能完整性。
F2etest是一个面向前端、测试、产品等岗位的多浏览器兼容性测试整体解决方案,具备多种优势:10倍以上硬件利用率,降低企业运营成本;提供非常棒的桌面用户体验,极大的提高测试效率;浏览器云提供真实浏览器环境,还原真实测试场景;WebDriver云快速稳定的支撑自动化测试脚本运行。
Karma:一种可内嵌的JS技术框架,允许在多个真正的浏览器执行JavaScript代码。
WebDriver协议:浏览器厂商都遵守WebDriver协议,可以通过向远程服务器发送命令来控制浏览器行为。
Guacamole:一种开源的远程H5解决方案,可用来实时监测远程自动化任务进展。
Windows Server:Server版Windows,可最大化复用机器资源。
HostsShare:实现跨浏览器,跨服务器的Hosts共享,提供跨域访问解决方案。
UI Recorder:UI自动化录制工具。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
图1是本发明一实施例的多浏览器兼容性测试***架构示意图。如图1所示,该***包括:
测试脚本录制模块100、测试案例管理模块200、测试调度管理模块300、测试终端管理模块400及状态实时监测模块500;其中,
所述测试脚本录制模块100部署在测试终端节点上,用于录制多浏览器兼容性测试脚本,并将测试脚本上传至测试案例管理模块200;
所述测试案例管理模块200,用于批量导入测试案例,定时向测试调度管理模块300推送测试案例及测试脚本;
所述测试调度管理模块300,用于根据测试案例及测试脚本进行测试任务的分配;其中,依据测试节点资源占用情况与任务执行情况进行统一调度,使测试节点资源与测试任务匹配,将测试任务分发至相应的测试节点;
所述测试终端管理模块400,用于配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;
所述状态实时监测模块500,用于采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块300进行监控及调度管理。
本发明的多浏览器兼容性测试***,具备全自动化测试,资源占用量低,执行效率高,用户体验佳,脚本可定制等优点,大大解放前端开发人员测试压力,提高前端整体兼容性测试质量。
在本实施例中,所述测试脚本录制模块100具体用于:
通过UI Recorder同步录制开发人员在测试终端节点输入的多浏览器兼容性测试脚本,并支持WebDriver协议标准。
在本实施例中,所述测试案例管理模块200具体用于:
建立测试案例库,并提供可视化界面及批量导入接口;其中,由开发人员利用可视化界面输入测试案例或利用批量导入接口批量导入测试案例,所述测试案例存储于测试案例库。
在本实施例中,所述测试调度管理模块300还用于:
获取状态实时监测模块500发送的状态结果,根据所述状态结果生成测试案例分析报表,展示测试案例执行成功率与失败原因;
当状态结果中出现执行状态异常时,对测试任务进行自动调试。
在本实施例中,所述测试终端管理模块400具体用于:
通过Windows Server云技术及Windows Server多用户机制,扩建执行机节点,并配置底层虚拟机资源调用策略。
所述测试终端管理模块400还用于:
在进行测试任务时,并发进行多个测试任务,实时返回多浏览器兼容性测试动画至测试脚本录制模块100,展示给测试人员。
所述测试终端管理模块400还用于:
设置状态输出接口,供状态实时监测模块500实时采集测试节点执行任务的状态及测试节点资源状态。
在本实施例中,所述状态实时监测模块500具体用于:
利用Guacamole组件对测试节点执行任务的状态进行实时采集。
相较于现有技术,本发明至少存在以下优点:
建立了统一的前端测试案例库,实现案例编辑一次可多处自动运行,极大提高案例完整度与执行程度。
通过使用Window server云,利用Windows Server多用户的特性,将执行机的使用效率提升10倍以上,资源利用率高,可并行完成测试任务。
结合WebDriver协议,可实现测试库向各浏览器自动推送执行案例的功能,实现了机器资源最大程度复用与高自动化水平。
通过F2etest+Karma+Guacamole核心机制设计,可实现真正的零成本自动化:测试者在本地做出的测试过程,可自动录制为测试脚本回传至测试主服务器;同时,维护在测试案例库中的案例,会作为默认自动向各测试终端推送测试;通过实时监控模块,当自动化出现问题时,我们能非常便利的对自动化进展进行即时监控和调试。
应当注意,尽管在上文详细描述中提及了多浏览器兼容性测试***的若干模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
为了对上述多浏览器兼容性测试***进行更为清楚的解释,下面结合一具体实施例来进行详细说明。
参考图2,为本发明一具体实施例的多浏览器兼容性测试***的架构关系示意图。参考图3,为本发明一具体实施例的多浏览器兼容性测试***的自动化测试流程示意图。
如图2及图3所示,测试脚本录制模块100:
该模块部署在测试终端节点上,基于UI Recorder进行实现,支持WebDriver协议标准,支持开发人员在测试终端节点直接录制脚本并上传,对接测试案例管理模块200。
根据测试案例管理模块200返回的可视化配置界面,由开发人员在界面输入测试数据。
测试案例管理模块200:
建立中心统一化的测试案例库服务器;该模块提供测试案例存储功能,并为开发人员提供可视化界面及批量导入文件API两种方式,进行测试案例导入;
定时向测试调度管理模块300推送维护好的测试案例集,实现了开发人员与测试服务器之间的解耦。
测试调度管理模块300:
负责测试任务全生命周期调度管理,实现资源调度与任务分配策略。
接收测试案例管理模块200推送来的测试案例与测试脚本,并依据测试终端管理模块400报送的各测试节点资源情况与任务情况,进行统一调度,完成资源与测试任务的匹配,将测试任务分发至各测试服务器节点;
对接状态实时监测模块500,生成测试案例分析报表,展示案例执行成功率与失败原因;
当状态实时监测模块500报送执行状态异常时,及时对测试任务进行调试;例如,依据内置策略与机制完成测试任务实时调试与监控。
测试终端管理模块400:
该模块基于Windows Server云技术,利用Windows Server多用户特性,完成执行机节点扩建。其中,测试服务器可以为多个,高并发测试Node群可以包含多个node(节点)。
可进行多个测试Job高并发。
接收测试调度管理模块300分配的测试案例及脚本,完成测试任务,并与状态实时监测模块500实时交互,提供接口供状态实时监测模块500实时采集节点状态,回传自动化测试执行状态。
实时返回多浏览器兼容性测试动画至测试脚本录制模块100,展示给测试人员。
状态实时监测模块500:
与测试终端管理模块400进行交互,基于Guacamole对测试终端管理模块400中测试节点集群的测试状态进行采集,实时跟踪测试节点上的测试任务状态,并监测资源状态,将状态结果回传至测试调度管理模块300。
本发明提出的多浏览器兼容性测试可以实现零成本的全自动化多浏览器兼容性测试,克服了现有测试浏览器兼容性过程中,结果真实度低,效率低,硬件资源利用率低等弊端。
本发明将测试全流程有效解耦为五个模块进行实现:测试脚本录制,测试案例管理,测试调度管理,测试终端管理及状态实时监测。测试脚本录制模块通过自动化录制上传的方式,极大简化了开发人员编写测试案例的过程,完美还原真实生产环境下操作流程;测试案例管理模块提供了统一的案例与脚本管理,并提供可视化输入、API批量录入、脚本直接上传等多种案例导入方式,具有体验良好,操作简单,节省人力的优点;测试调度管理模块通过集成实现硬件资源管理与测试任务综合调度,对整体测试***状态进行全面管控。测试终端管理模块实现了物理资源的最大化利用,并通过多用户机制创建出大量测试节点,具备高可用,高并行特性,测试效率大幅度提升;状态实时监测模块可以实时采集各测试节点上测试任务状态,为调度决策提供基础数据;从整体来看,本发明的多浏览器兼容性测试过程克服了现有测试过程中耗费人力,硬件资源,环境不真实,数据不完整等弊端,实现了端到端的可配置化全自动兼容性测试,提供非常友好的用户体验,极大的提高测试效率。
在介绍了本发明示例性实施方式的方法之后,接下来,参考图4对本发明示例性实施方式的多浏览器兼容性测试方法进行介绍。
基于同一发明构思,本发明还提出了一种多浏览器兼容性测试方法,如图4所示,该方法包括:
步骤S401,将测试脚本录制模块部署在测试终端节点上,通过测试脚本录制模块录制多浏览器兼容性测试脚本,并将测试脚本上传至测试案例管理模块;
步骤S402,通过测试案例管理模块,批量导入测试案例,定时向测试调度管理模块推送测试案例及测试脚本;
步骤S403,通过测试调度管理模块,根据测试案例及测试脚本进行测试任务的分配;其中,依据测试节点资源占用情况与任务执行情况进行统一调度,使测试节点资源与测试任务匹配,将测试任务分发至相应的测试节点;
步骤S404,通过测试终端管理模块,配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;
步骤S405,通过状态实时监测模块,采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块进行监控及调度管理。
在本实施例中,步骤S401的具体过程还包括:
通过UI Recorder同步录制开发人员在测试终端节点输入的多浏览器兼容性测试脚本,并支持WebDriver协议标准。
在本实施例中,步骤S402的具体过程还包括:
建立测试案例库,并提供可视化界面及批量导入接口;其中,由开发人员利用可视化界面输入测试案例或利用批量导入接口批量导入测试案例,所述测试案例存储于测试案例库。
在本实施例中,步骤S403的具体过程还包括:
获取状态实时监测模块发送的状态结果,根据所述状态结果生成测试案例分析报表,展示测试案例执行成功率与失败原因;
当状态结果中出现执行状态异常时,对测试任务进行自动调试。
在本实施例中,步骤S404的具体过程还包括:
通过Windows Server云技术及Windows Server多用户机制,扩建执行机节点,并配置底层虚拟机资源调用策略。
在进行测试任务时,并发进行多个测试任务,实时返回多浏览器兼容性测试动画至测试脚本录制模块,展示给测试人员。
设置状态输出接口,供状态实时监测模块实时采集测试节点执行任务的状态及测试节点资源状态。
在本实施例中,步骤S405的具体过程还包括:
利用Guacamole组件对测试节点执行任务的状态进行实时采集。
需要说明的是,尽管在上述实施例及附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
基于前述发明构思,如图5所示,本发明还提出了一种计算机设备500,包括存储器510、处理器520及存储在存储器510上并可在处理器520上运行的计算机程序530,所述处理器520执行所述计算机程序530时实现前述多浏览器兼容性测试方法。
基于前述发明构思,本发明提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现前述多浏览器兼容性测试方法。
本发明提出的多浏览器兼容性测试***及方法将测试全流程有效解耦为五个模块进行实现:测试脚本录制,测试案例管理,测试调度管理,测试终端管理及状态实时监测,克服了现有测试过程中耗费人力,硬件资源,环境不真实,数据不完整等弊端,能够极大简化开发人员编写测试案例的过程,还原真实生产环境下操作流程,测试案例的导入方式操作简单,体验良好,节省人力,在管理测试终端时能够实现物理资源的最大化利用,通过多用户机制创建出大量测试节点,具备高可用,高并行特性,测试效率大幅度提升,在测试过程中还可以实时采集、监测任务执行状态,对测试进程进行调度决策,整体测试过程实现了端到端的可配置化全自动兼容性测试,提供非常友好的用户体验,极大的提高测试效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种多浏览器兼容性测试***,其特征在于,该***包括:测试脚本录制模块、测试案例管理模块、测试调度管理模块、测试终端管理模块及状态实时监测模块;其中,
所述测试脚本录制模块部署在测试终端节点上,用于录制多浏览器兼容性测试脚本,并将测试脚本上传至测试案例管理模块;
所述测试案例管理模块,用于批量导入测试案例,定时向测试调度管理模块推送测试案例及测试脚本;
所述测试调度管理模块,用于根据测试案例及测试脚本进行测试任务的分配;其中,依据测试节点资源占用情况与任务执行情况进行统一调度,使测试节点资源与测试任务匹配,将测试任务分发至相应的测试节点;
所述测试终端管理模块,用于配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;
所述状态实时监测模块,用于采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块进行监控及调度管理。
2.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述测试脚本录制模块具体用于:
通过UI Recorder同步录制开发人员在测试终端节点输入的多浏览器兼容性测试脚本,并支持WebDriver协议标准。
3.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述测试案例管理模块具体用于:
建立测试案例库,并提供可视化界面及批量导入接口;其中,由开发人员利用可视化界面输入测试案例或利用批量导入接口批量导入测试案例,所述测试案例存储于测试案例库。
4.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述测试调度管理模块还用于:
获取状态实时监测模块发送的状态结果,根据所述状态结果生成测试案例分析报表,展示测试案例执行成功率与失败原因;
当状态结果中出现执行状态异常时,对测试任务进行自动调试。
5.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述测试终端管理模块具体用于:
通过Windows Server云技术及Windows Server多用户机制,扩建执行机节点,并配置底层虚拟机资源调用策略。
6.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述测试终端管理模块还用于:
在进行测试任务时,并发进行多个测试任务,实时返回多浏览器兼容性测试动画至测试脚本录制模块,展示给测试人员。
7.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述测试终端管理模块还用于:
设置状态输出接口,供状态实时监测模块实时采集测试节点执行任务的状态及测试节点资源状态。
8.根据权利要求1所述的多浏览器兼容性测试***,其特征在于,所述状态实时监测模块具体用于:
利用Guacamole组件对测试节点执行任务的状态进行实时采集。
9.一种多浏览器兼容性测试方法,其特征在于,该方法包括:
将测试脚本录制模块部署在测试终端节点上,通过测试脚本录制模块录制多浏览器兼容性测试脚本,并将测试脚本上传至测试案例管理模块;
通过测试案例管理模块,批量导入测试案例,定时向测试调度管理模块推送测试案例及测试脚本;
通过测试调度管理模块,根据测试案例及测试脚本进行测试任务的分配;其中,依据测试节点资源占用情况与任务执行情况进行统一调度,使测试节点资源与测试任务匹配,将测试任务分发至相应的测试节点;
通过测试终端管理模块,配置每台测试服务器的测试节点,由测试节点执行分配到的测试案例及测试脚本,进行测试任务;
通过状态实时监测模块,采集测试节点执行任务的状态及测试节点资源状态,并将状态结果发送至测试调度管理模块进行监控及调度管理。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求9所述方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求9所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110798964.5A CN113419965A (zh) | 2021-07-15 | 2021-07-15 | 一种多浏览器兼容性测试***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110798964.5A CN113419965A (zh) | 2021-07-15 | 2021-07-15 | 一种多浏览器兼容性测试***及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113419965A true CN113419965A (zh) | 2021-09-21 |
Family
ID=77721056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110798964.5A Pending CN113419965A (zh) | 2021-07-15 | 2021-07-15 | 一种多浏览器兼容性测试***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113419965A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113836036A (zh) * | 2021-10-15 | 2021-12-24 | 中国电力科学研究院有限公司 | 浏览器兼容性自动化测试方法、***、设备及存储介质 |
CN114218122A (zh) * | 2021-12-31 | 2022-03-22 | 北京康斯特仪表科技股份有限公司 | 测试***、测试主机以及数据记录器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156673A (zh) * | 2011-04-20 | 2011-08-17 | 北京航空航天大学 | 面向测试用例描述的gui自动化测试***及其测试方法 |
CN104834595A (zh) * | 2015-02-15 | 2015-08-12 | 网易(杭州)网络有限公司 | 一种可视化自动测试方法及*** |
CN109656643A (zh) * | 2017-10-10 | 2019-04-19 | 武汉斗鱼网络科技有限公司 | 多浏览器兼容性测试方法、存储介质、电子设备及*** |
-
2021
- 2021-07-15 CN CN202110798964.5A patent/CN113419965A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156673A (zh) * | 2011-04-20 | 2011-08-17 | 北京航空航天大学 | 面向测试用例描述的gui自动化测试***及其测试方法 |
CN104834595A (zh) * | 2015-02-15 | 2015-08-12 | 网易(杭州)网络有限公司 | 一种可视化自动测试方法及*** |
CN109656643A (zh) * | 2017-10-10 | 2019-04-19 | 武汉斗鱼网络科技有限公司 | 多浏览器兼容性测试方法、存储介质、电子设备及*** |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113836036A (zh) * | 2021-10-15 | 2021-12-24 | 中国电力科学研究院有限公司 | 浏览器兼容性自动化测试方法、***、设备及存储介质 |
CN114218122A (zh) * | 2021-12-31 | 2022-03-22 | 北京康斯特仪表科技股份有限公司 | 测试***、测试主机以及数据记录器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103150249B (zh) | 一种自动化测试的方法和*** | |
US20210311858A1 (en) | System and method for providing a test manager for use with a mainframe rehosting platform | |
JP5926864B2 (ja) | クラウドコンピューティングシステムをコンフィギュアするためのシステム及び方法 | |
US20110035724A1 (en) | Software application recreation | |
US20150100829A1 (en) | Method and system for selecting and executing test scripts | |
US20150100832A1 (en) | Method and system for selecting and executing test scripts | |
US20090307763A1 (en) | Automated Test Management System and Method | |
US20120203536A1 (en) | Method and system for software behaviour management | |
CN107302476B (zh) | 一种测试异步交互***的自动化测试方法与*** | |
CN105378493A (zh) | 用于支持协议无关器件测试***中协议重新配置的基于云的基础设施 | |
US10394583B2 (en) | Automated model generation for a software system | |
US10296445B2 (en) | Automated system documentation generation | |
US20150100830A1 (en) | Method and system for selecting and executing test scripts | |
US20180210745A1 (en) | Virtual service interface | |
CN113419965A (zh) | 一种多浏览器兼容性测试***及方法 | |
US20150100831A1 (en) | Method and system for selecting and executing test scripts | |
US9983856B2 (en) | Transaction flow visualization | |
US10657023B1 (en) | Techniques for collecting and reporting build metrics using a shared build mechanism | |
CN105117262A (zh) | 一种任务自动化执行方法 | |
RU2678717C1 (ru) | Способ построения программного комплекса автоматизации и визуализации тестирования встроенного программного обеспечения электронных устройств | |
Merenstein et al. | {CNSBench}: A cloud native storage benchmark | |
US20170200097A1 (en) | Transaction flow visualization | |
US20170200098A1 (en) | Transaction flow visualization | |
CN113672502A (zh) | 程序多***测试方法及其相应的装置、设备、介质 | |
CN113535560B (zh) | 测试执行方法、装置、存储介质和计算设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |