CN112506772B - web自动化测试方法、装置、电子设备和存储介质 - Google Patents
web自动化测试方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112506772B CN112506772B CN202011407834.6A CN202011407834A CN112506772B CN 112506772 B CN112506772 B CN 112506772B CN 202011407834 A CN202011407834 A CN 202011407834A CN 112506772 B CN112506772 B CN 112506772B
- Authority
- CN
- China
- Prior art keywords
- test
- machine
- information
- testing
- tester
- 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.)
- Active
Links
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/3664—Environments for testing or debugging software
-
- 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/3696—Methods or tools to render software testable
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种web自动化测试方法、装置、电子设备和存储介质。该web自动化测试方法包括:基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;将所述novnc端口信息发送至测试管理平台;所述测试机根据所述测试服务信息执行测试服务。本发明实施例通过测试机依赖镜像的复用性提高了web自动化测试的效率,且通过设置novnc端口信息实现支持远程实时查看测试机测试服务执行情况。
Description
技术领域
本发明实施例涉及软件测试技术领域,尤其涉及一种web自动化测试方法、装置、电子设备和存储介质。
背景技术
web自动化测试,即利用测试工具模拟人工操作浏览器的自动化测试,测试过程是基于浏览器的操作。因此测试工具或测试平台,要完成web自动化测试工具,必须驱动浏览器进行操作。
目前测试工具或平台,可以基于web自动化测试工具(例如selenium)驱动浏览器执行测试。基于测试工具selenium支持分布式测试执行,即支持进行中心和节点的配置,启动中心下所有机器节点的一种或多种浏览器驱动,实现多环境执行测试。或者基于容器方式实现测试机测试服务,如开源测试平台rabbit,利用容器+selenium实现web测试机支持,可以远程桌面,记录日志,反馈测试执行情况。
但是基于自动化测试工具的方式,对于执行测试任务的测试机都是物理机,即已安装对应操作系统和浏览器的物理机,对于多机器和多操作系统和浏览器版本等的多种组合测试,会造成所需测试机数量的增加,成本较高,不执行测试时测试机闲置又比较浪费;但如果测试机器同时用于其他任务,有可能会存在冲突或者性能问题。另外,测试工作中,完全相同或者某一项配置不同的测试机环境,不易实现。而对于容器方式,像rabbit平台,虽然支持了测试机使用,但是无法实时查看浏览器动态操作,只能通过日志查看服务执行情况;且测试机所在的容器必须与管理服务器部署在同一个机器上,无法分离。
发明内容
本发明实施例提供一种web自动化测试方法、装置、电子设备和存储介质,通过测试机依赖镜像的复用性提高了web自动化测试的效率,且通过设置novnc端口信息实现支持远程实时查看测试机测试服务执行情况。
第一方面,本发明实施例提供了一种web自动化测试方法,包括:
基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
将所述novnc端口信息发送至测试管理平台;
所述测试机根据所述测试服务信息执行测试服务。
第二方面,本发明实施例还提供了一种web自动化测试装置,包括:
测试机部署模块,用于基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
端口信息发送模块,用于将所述novnc端口信息发送至测试管理平台;
测试服务执行模块,用于所述测试机根据所述测试服务信息执行测试服务。
第三方面,本发明实施例还提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任一实施例所述的web自动化测试方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任一实施例所述的web自动化测试方法。
本发明实施例基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,配置文件中至少包括novnc端口信息和测试服务信息;将novnc端口信息发送至测试管理平台;测试机根据所述测试服务信息执行测试服务。本发明实施例通过测试机依赖镜像的复用性提高了web自动化测试的效率,且通过设置novnc端口信息实现支持远程实时查看测试机测试服务执行情况。
附图说明
图1是本发明实施例一中的web自动化测试方法的流程图;
图2是本发明实施例二中的web自动化测试方法的流程图;
图3是本发明实施例所提供的一种测试机测试服务执行流程图;
图4是本发明实施例所提供的一种测试服务整体运行的流程图;
图5是本发明实施例三中的web自动化测试装置的结构示意图;
图6是本发明实施例四中的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的web自动化测试方法的流程图,本实施例可适用于支持远程实时查看测试机中测试服务执行情况的web自动化测试情况。该方法可以由web自动化测试装置来执行,该装置可以采用软件和/或硬件的方式实现,并可配置在电子设备中,例如电子设备可以是后台服务器等具有通信和计算能力的设备。如图1所示,该方法具体包括:
步骤101、基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,配置文件中至少包括novnc端口信息和测试服务信息。
容器技术是在共享同一个系统的内核前提下,将部署的测试机与系统其它部分隔离开,形成独立运行的一系列进程,从开发到测试再到生产的整个过程中,具有可移植性和一致性。计算机操作系统种类很多,且浏览器种类也各不相同,每一种操作系统和浏览器的搭配都可视为不同的测试机运行环境。预先设置的配置文件中包括测试机部署的所需的配置信息,例如novnc端口信息和测试服务信息,其中,测试服务信息用于表征所需测试机完成的测试任务信息以及测试环境信息等。
面对所需的不同的测试机运行环境,使用容器技术,将不同的操作系统与不同的浏览器制作成不同的测试机依赖镜像,在同一物理机上进行部署,实现多种操作系统及浏览器在物理机上的同时运行,形成多个不同环境的测试机。测试机在搭建好环境后根据配置文件中的测试服务信息,执行测试任务。
其中,novnc是一款远程控制工具软件,在测试机管理平台与部署测试机的物理机上配置好novnc软件,可实现管理平台对各个测试机的自动化测试过程的实时回显、观测和控制。
具体的,根据测试实际情况进行规划,预先设置测试机部署所需配置文件,从镜像存储仓库中拉取对应的测试机依赖镜像,其中,测试机依赖镜像可以预先制作并存储在仓库中,根据镜像启动容器,在容器中部署测试机在物理机上运行。配置文件内容不做限制,不局限于novnc端口信息和测试服务信息,可根据实际测试服务情况进行配置。示例性的,物理机安装容器客户端并启用,根据docker-compose.yml文件拉取测试机依赖镜像,并启动容器,生成测试机。
在一个可行的实施例中,物理机和测试管理平台部署在不同机器上。
为了实现远程操作测试机以及便于对设置在不同物理机上的测试机进行管理,需要将部署测试机的物理机和测试管理平台部署在不同机器上。
基于容器技术,测试管理平台可以通过测试机的端口信息实现对测试机的管理,通过novnc端口信息实现对测试机的远程查看,因此可以将测试管理平台部署在与物理机不同的机器上。其中,物理机可以是服务器。
步骤102、将novnc端口信息发送至测试管理平台。
在部署测试机的物理机上配置好novnc控制软件,只需要将物理机与远程控制机器接入到同一局域网内或连接到互联网,物理机将配置好的测试机的novnc端口信息通过网络通信的方式发送到测试管理平台,以便测试管理平台根据该novnc端口信息实现对该物理机上的测试机的远程查看。示例性的,利用novnc技术进行web前端,即测试管理平台远程操作调用不同容器中的测试机桌面,操作浏览器,实现web自动化用例调试或执行,调试运行中可实时查看测试机远程桌面,预览浏览器动态操作,查看用例执行情况。
在一个可行的实施例中,该方法还包括:
将物理机的IP信息和部署的测试机端口信息发送至测试管理平台,以实现在测试管理平台上对测试机的注册管理。
在物理机上根据测试人员的实际需求,部署了相应的测试机,有时需要对多个测试环境进行同时测试,因此需要制作多个测试机依赖镜像,在物理机上运行。为了更好的监控各个测试机的运行状态和实现对各个测试机的控制,需要对各个测试机进行注册管理。由于测试管理平台与物理机不在同一个机器上,是以以太网的方式进行通信,一般常用的通信方式如socket通信,建立通信链路需要知道服务端与客户端的IP地址、端口号。
因此将物理机的IP信息发送至测试管理平台以便测试管理平台成功与部署了测试机的物理机完成通信,同时由于一台物理机上可以部署多个测试机,因此需要将测试机端口信息也发送至测试管理平台,以便测试管理平台实现对各测试机的连接通信。
具体的,配置测试管理平台软件,与物理机接入同一局域网或者互联网,物理机将当前分配的IP地址及每个测试机的端口信息发送到测试管理平台上进行注册,以便测试人员可登录测试管理平台软件对物理机上的测试机进行监测与控制。示例性的,在测试管理平台前端操作注册所需管理的测试机信息,包括测试机所在的物理机IP信息和配置文件中的novnc端口信息和部署好的测试机端口信息等。
在一个可行的实施例中,测试管理平台根据novnc端口信息调用关联的测试机桌面,实时查看测试机的测试服务执行情况,并对测试服务执行情况进行控制。
测试人员在物理机配置测试机后,测试机根据测试服务信息在相应的操作系统和浏览器环境下执行测试任务。测试任务执行过程中,测试人员登录测试管理平台通过预先注册的novnc端口信息,连接相应的测试机桌面,可以看到测试机的可视化界面,并能够查看测试机执行任务的状况。示例性的,若测试机在执行任务的过程中出现异常情况,如占用系统内存过大而导致机器卡顿、测试中出现了异常的报错及测试人员在测试过程中发现明显的问题等,测试人员可及时远程中断或停止测试机的测试任务。测试人员可及时对问题进行分析与解决,随后再重新开启测试机执行任务,提高对测试机执行任务的管理效率。
步骤103、测试机根据测试服务信息执行测试服务。
具体的,测试人员根据实际需求进行确定具体的测试内容,如首先驱动本机的浏览器,然后根据浏览器的搜索功能进行进一步的测试。配置好后,测试机读取测试服务信息,按照规定测试内容执行相应的测试服务。示例性的,结合web自动化测试技术,生成selenium可执行文件,执行并生成日志结果返回等。
在一个可行的实施例中,测试机根据测试服务信息执行测试服务,包括:
测试机根据测试服务执行情况生成日志报告结果。
日志报告是指将程序在整个过程中的运行情况记录下来,当出现问题时,可提供给测试人员追踪问题的信息和依据,工作人员根据记录打印下来的信息,推测出现问题的可能原因,对其进行及时修改,可节约解决问题的时间,提高产品更新迭代的效率。若测试过程中没有出现问题,测试人员可根据日志报告来确定当前版本的程序测试运行正常。
具体的,若测试过程中出现问题,由于出现问题的时间是不确定的,当测试人员没有进行监测时,测试机运行发生了错误,会将此时的运行状态如时间、当前测试节点信息、内存情况等记录生成日志报告,当测试人员进行监测时发现已经出现了问题,则根据保留下来的日志报告进行分析与问题追溯。当测试机执行完所有测试任务或者中途发生错误异常时,测试机停止工作,同时日志报告也停止更新。示例性的,测试机也支持后台静默运行,跟进服务计划执行完成用例任务后生成报告。
本发明实施例结合novnc技术实现web自动化测试过程的实时回显、观测和控制,实时获得测试机浏览器执行情况,无需侵入浏览器内核或扩展,无需软件录屏。
本发明实施例基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,配置文件中至少包括novnc端口信息和测试服务信息;将novnc端口信息发送至测试管理平台;测试机根据所述测试服务信息执行测试服务。本发明实施例通过测试机依赖镜像的复用性提高了web自动化测试的效率,且通过设置novnc端口信息实现支持远程实时查看测试机测试服务执行情况。
实施例二
图2是本发明实施例二中的web自动化测试方法的流程图,本实施例二在实施例一的基础上进行进一步地优化。如图2所示,该方法包括:
步骤201、基于容器技术,根据目标操作系统、浏览器信息、web自动化工具以及日志报告结果实现测试机依赖镜像制作。
其中,目标操作系统包括linux操作系统或windows操作系统,浏览器信息包括至少两个浏览器信息,制作得到至少两个支持不同操作系统和不同浏览器信息的候选测试机依赖镜像。
由于不同的测试任务的属性导致其需要的操作系统以及浏览器信息不同,因此需要支持不同操作系统和不同浏览器信息的测试机依赖镜像,以支持部署不同测试环境的测试任务。
其中,目标操作系统是指测试机依赖镜像中所支持浏览器运行的操作系统。浏览器信息是指测试机依赖镜像中所使用的浏览器类型信息以及浏览器版本信息等。
示例性的,如常用的操作系统有linux和windows等,浏览器类型有IE浏览器、谷歌浏览器、IE浏览器等,可将不同的操作系统与不同的浏览器类型或者不同的浏览器版本进行组合,根据测试所需的测试环境搭配制作成候选测试机依赖镜像,如windows操作系统和IE浏览器,或windows操作系统和360浏览器等。在测试机依赖镜像制作完成后,上传仓库实现存储,以在部署测试机时可以随时拉取,实现了测试机依赖镜像的复用性。
步骤202、基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机。
在一个可行的实施例中,预先设置的配置文件中包括至少两种测试服务信息,其中,至少两种测试服务信息中的操作系统和/或浏览器信息不同;
相应的,基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机,包括:
基于容器技术,根据至少两种测试服务信息从候选测试机依赖镜像中分别确定至少两个关联的目标测试机依赖镜像;
根据至少两个关联的目标测试机依赖镜像在同一个物理机上部署至少两个目标测试机;其中,至少两个目标测试机分别支持至少两种测试服务信息中的操作系统和浏览器信息。
由于测试需求,需要在同一台物理机上部署多个测试机,以实现多容器运行多个测试机环境。并且这多个测试机环境可以是不同配置的,即操作系统不同和/或浏览器信息不同。根据所需配置的多个测试机环境信息以及对应的测试任务形成配置文件。示例性的,测试人员根据实际测试任务发布多个测试服务信息,每个测试服务信息包含关联的目标测试机依赖镜像的具体配置信息及测试机需要完成的测试任务内容。可选的,配置文件中的多个测试机环境可以不同,也可以相同。
在物理机上部署测试机时,根据配置文件中的至少两种测试服务信息从预先制作的候选测试机依赖镜像中确定测试环境匹配的目标测试机依赖镜像,根据目标测试机依赖镜像在物理机上部署目标测试机。示例性的,配置文件中包括两种测试服务信息,第一种测试服务信息中所需的测试环境为linux操作系统+谷歌浏览器,第二种测试服务信息中所需的测试环境为windows操作系统+IE浏览器,候选测试机依赖镜像中包括四种,第一种依赖镜像中的测试环境为linux操作系统+谷歌浏览器,第二种为linux操作系统+IE浏览器,第三种为windows操作系统+谷歌浏览器,第四种为windows操作系统+IE浏览器。则根据测试服务信息中的操作系统和浏览器信息和候选测试机依赖镜像中的操作系统和浏览器进行匹配,得到第一种测试服务信息关联的目标测试机依赖镜像为第一种,第二种测试服务信息关联的目标测试机依赖镜像为第四种,分别根据第一种测试机依赖镜像和第四种测试机依赖镜像为两种测试服务信息安装容器,部署相应的测试机环境。以实现物理机上满足多容器运行相同配置或者不同配置的测试机环境。
步骤203、将novnc端口信息发送至测试管理平台。
步骤204、测试机根据测试服务信息执行测试服务。
本发明实施例通过容器集群技术结合web自动化测试技术,可显著提高资源利用率。基于容器技术可制作不同操作系统、不同浏览器类型以及不同浏览器版本的测试机,实现低成本单主机运行多浏览器和多测试终端(传统方式一台主机上无法装多个版本的浏览器、虚拟机模式资源利用率没有容器高)。
图3是本发明实施例所提供的一种测试机测试服务执行流程图。如图3所示,用户通过交互界面控制浏览器控制台,并通过浏览器控制台发布测试服务给相应的测试机,测试机在接收到相应的测试服务后开始执行,并根据测试服务中的服务需求将服务执行过程中的截图发送至分布式文件系统,例如发送至fastdfs,同时用户可以通过浏览器控制台从分布式文件系统中读取该截图,以实现对测试服务进程的了解。并且在服务服务执行过程中,redis存储可以读取测试机产生的日志报告结果,读取写入全局数据。
图4是本发明实施例所提供的一种测试服务整体运行的流程图。如图4所示,用户通过测试管理平台中的浏览器远程控制浏览器控制平台,并向浏览器控制平台发布测试服务计划,浏览器控制平台接收到测试服务计划后,根据容器技术组装数据并部署容器,通过web自动化工具和测试机依赖镜像生成测试服务的可执行文件,并对该可执行文件进行执行,生成测试结果,并返回该测试结果给浏览器控制平台,浏览器控制平台对接收到测试数据进行计算,并将计算得到的结果存储到数据库中,例如存储到mysql中。
并且,由于部署容器的组装数据中包括novnc端口信息,因此用户可以通过测试管理平台中的浏览器打开novnc端口相应的窗口实现远程实时查看测试机测试服务执行情况。具体的,通过novnc窗口既可以实时查看对应的测试机执行情况,还可以根据执行情况控制测试服务进程,例如中断或者停止等操作。测试机执行情况既包括测试机中浏览器的实时动态画面,也包括测试服务产生的实时日志信息。实现了根据可视使用需求和使用量弹性控制(拉起或关停)测试容器,优化资源占用。
本发明实施例提出了一种基于容器+novnc的web自动化测试机的实现方法,完善传统web测试机的不足的同时,也优化了rabbit平台的无法实时预览浏览器动态和测试机与服务器分布式部署等问题。
本发明实施例,对web自动化测试工作进行,有以下明显效果:
在部署上,利用容器技术,部署更简便,利用率更高;在成本上,测试机依赖镜像的复用性,在一台物理机上实现多测试机并行运行,成本更低;在测试工作上,相同或不同测试环境下执行测试更准确。
实施例三
图5是本发明实施例三中的web自动化测试装置的结构示意图,本实施例可适用于支持远程实时查看测试机中测试服务执行情况的web自动化测试情况。如图5所示,该装置包括:
测试机部署模块510,用于基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
端口信息发送模块520,用于将所述novnc端口信息发送至测试管理平台;
测试服务执行模块530,用于所述测试机根据所述测试服务信息执行测试服务。
本发明实施例基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,配置文件中至少包括novnc端口信息和测试服务信息;将novnc端口信息发送至测试管理平台;测试机根据所述测试服务信息执行测试服务。本发明实施例通过测试机依赖镜像的复用性提高了web自动化测试的效率,且通过设置novnc端口信息实现支持远程实时查看测试机测试服务执行情况。
可选的,所述装置还包括镜像制作模块,用于在基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机之前,基于容器技术,根据目标操作系统、浏览器信息、web自动化工具以及日志报告结果实现测试机依赖镜像制作;
其中,所述目标操作系统包括linux操作系统或windows操作系统,所述浏览器信息包括至少两个浏览器信息,制作得到至少两个支持不同操作系统和不同浏览器信息的候选测试机依赖镜像。
可选的,所述预先设置的配置文件中包括至少两种测试服务信息,其中,所述至少两种测试服务信息中的操作系统和/或浏览器信息不同;
相应的,测试机部署模块510,具体用于:
基于容器技术,根据所述至少两种测试服务信息从所述候选测试机依赖镜像中分别确定至少两个关联的目标测试机依赖镜像;
根据所述至少两个关联的目标测试机依赖镜像在同一个物理机上部署至少两个目标测试机;其中,所述至少两个目标测试机分别支持所述至少两种测试服务信息中的操作系统和浏览器信息。
可选的,所述装置还包括测试机信息发送模块,具体用于:
将所述物理机的IP信息和部署的测试机端口信息发送至测试管理平台,以实现在测试管理平台上对所述测试机的注册管理。
可选的,所述测试管理平台根据所述novnc端口信息调用关联的测试机桌面,实时查看所述测试机的测试服务执行情况,并对所述测试服务执行情况进行控制。
可选的,测试服务执行模块530,具体用于:
所述测试机根据测试服务执行情况生成日志报告结果。
可选的,所述物理机和所述测试管理平台部署在不同机器上。
本发明实施例所提供的web自动化测试装置可执行本发明任意实施例所提供的web自动化测试方法,具备执行web自动化测试方法相应的功能模块和有益效果。
实施例四
图6是本发明实施例四提供的一种电子设备的结构示意图。图6示出了适于用来实现本发明实施方式的示例性电子设备12的框图。图6显示的电子设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储装置28,连接不同系统组件(包括系统存储装置28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储装置总线或者存储装置控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储装置28可以包括易失性存储装置形式的计算机系统可读介质,例如随机存取存储装置(RAM)30和/或高速缓存存储装置32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储装置28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储装置28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图6所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图6中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储装置28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的web自动化测试方法,包括:
基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
将所述novnc端口信息发送至测试管理平台;
所述测试机根据所述测试服务信息执行测试服务。
实施例五
本发明实施例五还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的web自动化测试方法,包括:
基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
将所述novnc端口信息发送至测试管理平台;
所述测试机根据所述测试服务信息执行测试服务。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种web自动化测试方法,其特征在于,包括:
基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
将所述novnc端口信息发送至测试管理平台;
所述测试机根据所述测试服务信息执行测试服务;
在基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机之前,还包括:
基于容器技术,根据目标操作系统、浏览器信息、web自动化工具以及日志报告结果实现测试机依赖镜像制作;
其中,所述目标操作系统包括linux操作系统或windows操作系统,所述浏览器信息包括至少两个浏览器信息,制作得到至少两个支持不同操作系统和不同浏览器信息的候选测试机依赖镜像;
所述基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机包括:
基于容器技术,将不同的操作系统与不同的浏览器制作成不同的测试机依赖镜像在同一物理机上进行部署,实现多种操作系统及浏览器在物理机上的同时运行。
2.根据权利要求1所述的方法,其特征在于,所述预先设置的配置文件中包括至少两种测试服务信息,其中,所述至少两种测试服务信息中的操作系统和/或浏览器信息不同;
相应的,基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机,包括:
基于容器技术,根据所述至少两种测试服务信息从所述候选测试机依赖镜像中分别确定至少两个关联的目标测试机依赖镜像;
根据所述至少两个关联的目标测试机依赖镜像在同一个物理机上部署至少两个目标测试机;其中,所述至少两个目标测试机分别支持所述至少两种测试服务信息中的操作系统和浏览器信息。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述物理机的IP信息和部署的测试机端口信息发送至测试管理平台,以实现在测试管理平台上对所述测试机的注册管理。
4.根据权利要求3所述的方法,其特征在于,所述测试管理平台根据所述novnc端口信息调用关联的测试机桌面,实时查看所述测试机的测试服务执行情况,并对所述测试服务执行情况进行控制。
5.根据权利要求1所述的方法,其特征在于,所述测试机根据所述测试服务信息执行测试服务,包括:
所述测试机根据测试服务执行情况生成日志报告结果。
6.根据权利要求1所述的方法,其特征在于,所述物理机和所述测试管理平台部署在不同机器上。
7.一种web自动化测试装置,其特征在于,包括:
测试机部署模块,用于基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机;其中,所述配置文件中至少包括novnc端口信息和测试服务信息;
端口信息发送模块,用于将所述novnc端口信息发送至测试管理平台;
测试服务执行模块,用于所述测试机根据所述测试服务信息执行测试服务;
镜像制作模块,用于在所述基于容器技术,根据预先设置的配置文件和测试机依赖镜像,在物理机上部署测试机之前,基于所述容器技术,根据目标操作系统、浏览器信息、web自动化工具以及日志报告结果实现测试机依赖镜像制作;
其中,所述目标操作系统包括linux操作系统或windows操作系统,所述浏览器信息包括至少两个浏览器信息,制作得到至少两个支持不同操作系统和不同浏览器信息的候选测试机依赖镜像;
所述测试机部署模块具体用于基于容器技术,将不同的操作系统与不同的浏览器制作成不同的测试机依赖镜像在同一物理机上进行部署,实现多种操作系统及浏览器在物理机上的同时运行。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的web自动化测试方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的web自动化测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011407834.6A CN112506772B (zh) | 2020-12-03 | 2020-12-03 | web自动化测试方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011407834.6A CN112506772B (zh) | 2020-12-03 | 2020-12-03 | web自动化测试方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112506772A CN112506772A (zh) | 2021-03-16 |
CN112506772B true CN112506772B (zh) | 2023-09-26 |
Family
ID=74970206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011407834.6A Active CN112506772B (zh) | 2020-12-03 | 2020-12-03 | web自动化测试方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112506772B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880213A (zh) * | 2022-04-19 | 2022-08-09 | 北京金堤科技有限公司 | 网页界面测试方法、装置、存储介质与电子设备 |
CN115374066B (zh) * | 2022-10-26 | 2023-02-07 | 北京芯可鉴科技有限公司 | 远程可视化系统与远程可视化方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536899A (zh) * | 2015-01-20 | 2015-04-22 | 成都益联科创科技有限公司 | 一种基于智能集群的软件部署及其维护方法 |
CN108519952A (zh) * | 2018-04-13 | 2018-09-11 | 南京新贝金服科技有限公司 | 一种分布式的web自动化测试系统及方法 |
CN109002307A (zh) * | 2018-06-27 | 2018-12-14 | 郑州云海信息技术有限公司 | 一种自动升级及自动化测试方法 |
CN110297771A (zh) * | 2019-06-19 | 2019-10-01 | 中信梧桐港供应链管理有限公司 | 用于仓单页面的分布式测试方法及装置 |
CN111104336A (zh) * | 2019-12-30 | 2020-05-05 | 武汉烽火信息集成技术有限公司 | 一种基于容器和vnc的服务接口在线测试方法及装置 |
CN111488420A (zh) * | 2020-04-02 | 2020-08-04 | 中国科学院地理科学与资源研究所 | 去中心微服务化区域洪水预警水信息系统及其集成方法 |
-
2020
- 2020-12-03 CN CN202011407834.6A patent/CN112506772B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536899A (zh) * | 2015-01-20 | 2015-04-22 | 成都益联科创科技有限公司 | 一种基于智能集群的软件部署及其维护方法 |
CN108519952A (zh) * | 2018-04-13 | 2018-09-11 | 南京新贝金服科技有限公司 | 一种分布式的web自动化测试系统及方法 |
CN109002307A (zh) * | 2018-06-27 | 2018-12-14 | 郑州云海信息技术有限公司 | 一种自动升级及自动化测试方法 |
CN110297771A (zh) * | 2019-06-19 | 2019-10-01 | 中信梧桐港供应链管理有限公司 | 用于仓单页面的分布式测试方法及装置 |
CN111104336A (zh) * | 2019-12-30 | 2020-05-05 | 武汉烽火信息集成技术有限公司 | 一种基于容器和vnc的服务接口在线测试方法及装置 |
CN111488420A (zh) * | 2020-04-02 | 2020-08-04 | 中国科学院地理科学与资源研究所 | 去中心微服务化区域洪水预警水信息系统及其集成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112506772A (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
CN109271325B (zh) | 应用的测试方法、系统、电子设备和存储介质 | |
JP7209034B2 (ja) | エッジコンピューティングテスト方法、装置、機器及び読み取り可能な記憶媒体 | |
US9886375B2 (en) | Automated execution of functional test scripts on a remote system within a unit testing framework | |
US7664986B2 (en) | System and method for determining fault isolation in an enterprise computing system | |
CN108768730B (zh) | 用于操作智能网卡的方法和装置 | |
US20150100829A1 (en) | Method and system for selecting and executing test scripts | |
US20150100832A1 (en) | Method and system for selecting and executing test scripts | |
CN111309343B (zh) | 一种开发部署方法及装置 | |
US20150100830A1 (en) | Method and system for selecting and executing test scripts | |
CN111651366A (zh) | Sdk测试方法、装置、设备及存储介质 | |
CN112506772B (zh) | web自动化测试方法、装置、电子设备和存储介质 | |
CN109388569B (zh) | 远程检测客户端环境异常的方法、测试服务器及存储介质 | |
US20150100831A1 (en) | Method and system for selecting and executing test scripts | |
CN113014445B (zh) | 用于服务器的运维方法、装置、平台及电子设备 | |
WO2021097824A1 (zh) | 一种代码质量和缺陷的分析方法、服务器及存储介质 | |
US9256509B1 (en) | Computing environment analyzer | |
CN115658529A (zh) | 用户页面的自动化测试方法以及相关设备 | |
CN112817853A (zh) | 一种自动测试方法、系统和电子设备 | |
US10929261B1 (en) | Device diagnosis | |
CN114629831A (zh) | 一种网卡性能测试方法、装置、设备和存储介质 | |
CN114168471A (zh) | 测试方法、装置、电子设备及存储介质 | |
US7873498B2 (en) | Remote hardware inspection system and method | |
US11294804B2 (en) | Test case failure with root cause isolation | |
CN116541270B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |