CN111552643A - 多浏览器网页访问同步方法、*** - Google Patents
多浏览器网页访问同步方法、*** Download PDFInfo
- Publication number
- CN111552643A CN111552643A CN202010344986.XA CN202010344986A CN111552643A CN 111552643 A CN111552643 A CN 111552643A CN 202010344986 A CN202010344986 A CN 202010344986A CN 111552643 A CN111552643 A CN 111552643A
- Authority
- CN
- China
- Prior art keywords
- test
- browser
- operation information
- uniform resource
- resource locator
- 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
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及计算机技术领域,涉及一种多浏览器网页访问同步方法,可应用在智慧安防场景中。基于测试技术,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,给测试浏览器集群中的测试浏览器反馈响应页面的同时,为测试浏览器注入同步脚本,使同步脚本监控各测试浏览器的操作信息及包含操作信息协议数据流,监控到操作信息时,向其他测试浏览器发送操作信息,同步脚本监控到包含操作信息的协议数据流时,根据操作信息控制测试浏览器执行对应操作,实现可以将任意测试浏览器作为主测试浏览器,使其他测试浏览器同步主测试浏览器的操作。提高了网页兼容性测试的效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种多浏览器网页访问同步方法、***。
背景技术
随着互联网技术的快速发展,互联网的各种信息基本都是以网页的形式向用户进行展示。如:html 5(html 5是构建Web内容的一种语言描述方式)页面。
以html 5页面为例,开发人员在html5页面制作完成后,需要针对不同的浏览器、不同分辨率、不同内核、不同***的移动设备上进行兼容性测试,兼容性测试通过后发布该html5页面。为了提高兼容性测试的效率,可以预先设定一个主浏览器和多个从浏览器,测试人员通过操控主浏览器即可实现一次测试多个浏览器或多个移动设备对该html5页面的兼容性。
目前的这种测试方式,由于是通过主浏览器上安插的脚本监控主浏览器的操作,根据监控的操作,使从浏览器的selenium webdriver(Web自动化测试工具的测试框架)驱动控制网页元素,使从浏览器与主浏览器做相同的操作,不能更改主从浏览器,在测试前,需预先设定一个主浏览器及多个从浏览器,测试过程中,用户只能对该主浏览器进行操作,因此,网页兼容性测试工作效率低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种提高网页兼容性测试工作效率的多浏览器网页访问同步方法、***。
一种多浏览器网页访问同步方法,所述方法包括:
当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页测试访问请求向浏览器服务器获取对应的第一响应页面;
所述代理服务器向所述测试浏览器发送所述第一响应页面及同步脚本,使所述同步脚本注入到所述测试浏览器集群中各测试浏览器中,对各所述测试浏览器的操作信息及包含所述操作信息的协议数据流进行监控;
当所述测试浏览器集群中的任一所述测试浏览器中被同步脚本监控到操作信息时,向所述测试浏览器集群中的其他测试浏览器发送包含所述操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含所述操作信息的协议数据流,控制其他测试浏览器执行与所述操作信息对应的操作。
在其中一个实施例中,所述同步脚本根据监控到包含所述操作信息的协议数据流,控制测试浏览器执行与所述操作信息对应的操作的方式,包括:
所述同步脚本根据所述操作信息进行解析,获取key中的数据及value的数据;
所述同步脚本根据所述key中的数据及value的数据调用测试浏览器的执行接口,使所述测试浏览器执行与所述操作信息对应的操作。
在其中一个实施例中,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页访问请求向所述浏览器服务器获取对应的第一响应页面的步骤之前,所述方法还包括:
当所述代理服务器接收到同步访问配置请求时,获取同步访问配置请求中的配置信息,所述配置信息包括需同步访问的服务器统一资源定位符;
所述代理服务器根据所述需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器中。
在其中一个实施例中,所述方法还包括:
当所述代理服务器接收到主测试浏览器的第二网页测试访问请求时,获取所述第二网页测试访问请求中的本地统一资源定位符,所述主测试浏览器为所述测试浏览器集群中被同步脚本监控到操作信息的测试浏览器;
所述代理服务器根据所述本地统一资源定位符,获取对应的服务器统一资源定位符;
所述代理服务器将所述第二网页测试访问请求中的所述本地统一资源定位符修改为所述服务器统一资源定位符,获得修改后的第二网页测试访问请求;
所述代理服务器将所述修改后的第二网页测试访问请求发送至浏览器服务器;
所述代理服务器接收所述浏览器服务器根据所述修改后的第二网页测试访问请求反馈的第二响应页面;
所述代理服务器向所述主测试浏览器发送所述第二响应页面。
在其中一个实施例中,所述接收所述浏览器服务器根据所述修改后的第二网页测试访问请求反馈的第二响应页面的步骤之后,所述方法还包括:
所述代理服务器将所述本地统一资源定位符和所述第二响应页面采用键值对的方式存储至容器服务器中。
在其中一个实施例中,所述方法还包括:
当所述代理服务器接收到从测试浏览器根据所述主测试浏览器的操作信息发送的第三网页测试访问请求时,获取所述第三网页测试访问请求中的本地统一资源定位符,所述从测试浏览器为所述测试浏览器集群中除主测试浏览器以外的测试浏览器,所述第三网页测试访问请求中的本地统一资源定位符与所述第二网页测试访问请求中的本地统一资源定位符相同;
所述代理服务器根据所述本地统一资源定位符,从容器服务器中获取所述本地统一资源定位符对应的所述第二响应页面;
所述代理服务器向所述从测试浏览器发送所述第二响应页面。
在其中一个实施例中,所述同步脚本监控测试浏览器的操作信息的方式,包括:
所述同步脚本调用测试浏览器的操作信息获取接口监控所述测试浏览器的操作信息。
在其中一个实施例中,所述方法还包括:所述同步脚本注入到所述测试浏览器集群中各测试浏览器中后,所述同步脚本开启测试浏览器的自动录屏进行操作录制,获得操作录制数据,将所述录制数据上传至区块链中。
一种多浏览器网页访问同步***,所述***包括:代理服务器、浏览器服务器、测试浏览器集群;
当所述代理服务器接收到所述测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页测试访问请求向浏览器服务器获取对应的第一响应页面;
所述代理服务器向所述测试浏览器发送所述第一响应页面及同步脚本,使所述同步脚本注入到所述测试浏览器集群中各测试浏览器中,对各所述测试浏览器的操作信息及包含所述操作信息的协议数据流进行监控;
当所述测试浏览器集群中的任一所述测试浏览器中被同步脚本监控到操作信息时,向所述测试浏览器集群中的其他测试浏览器发送包含所述操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含所述操作信息的协议数据流,控制其他测试浏览器执行与所述操作信息对应的操作。
在其中一个实施例中,所述代理服务器在接收到同步访问配置请求时,获取同步访问配置请求中的配置信息,所述配置信息包括需同步访问的服务器统一资源定位符;
所述代理服务器根据所述需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器中。
上述多浏览器网页访问同步方法、***,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,给测试浏览器集群中的测试浏览器反馈响应页面的同时,为测试浏览器注入同步脚本,使同步脚本监控各测试浏览器的操作信息及包含操作信息协议数据流,监控到操作信息时,向其他测试浏览器发送操作信息,同步脚本监控到包含操作信息的协议数据流时,根据操作信息控制测试浏览器执行对应操作,实现可以将任意测试浏览器作为主测试浏览器,使其他测试浏览器同步主测试浏览器的操作。在进行网页兼容性测试时,可以随意更换主测试浏览器对待测试网页进行操作,完成网页兼容性测试,提高了网页兼容性测试的效率。
附图说明
图1为一个实施例中多浏览器网页访问同步方法的应用场景图;
图2为一个实施例中多浏览器网页访问同步方法的流程示意图;
图3为一个实施例中多浏览器网页访问同步***的结构图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的多浏览器网页访问同步方法,可以应用于如图1所示的应用环境中。其中,测试浏览器集群102通过网络与代理服务器104通过网络进行通信,代理服务器104与浏览器服务器106通过网络进行通信。当代理服务器104接收到测试浏览器集群102中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页测试访问请求向浏览器服务器106获取对应的第一响应页面;代理服务器104向测试浏览器发送第一响应页面及同步脚本,使同步脚本注入到测试浏览器集群102中各测试浏览器中,对各测试浏览器的操作信息及包含操作信息的协议数据流进行监控;当测试浏览器集群102中的任一测试浏览器中被同步脚本监控到操作信息时,向测试浏览器集群102中的其他测试浏览器发送包含所述操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含所述操作信息的协议数据流,控制其他测试浏览器执行与所述操作信息对应的操作。其中,测试浏览器集群102中的各测试浏览器安装在终端上运行,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,代理服务器104和浏览器服务器106可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种多浏览器网页访问同步方法,包括以下步骤:
步骤S220,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于第一网页测试访问请求向浏览器服务器获取对应的第一响应页面。
其中,代理服务器是个人网络和Internet服务商之间的中间代理机构,负责转发合法的网络信息,对转发进行控制和登记,用于拦截测试浏览器集群中个的测试浏览器的所有的访问请求和响应页面。测试浏览器集群是两个以上需要访问待测试网页的浏览器的集群,测试浏览器集群中的各测试浏览器是安装在终端上供用户使用的客户端,测试浏览器集群中的各测试浏览器可以是不同类型浏览器,也可以是相同类型的浏览器,浏览器的类型有:IE浏览器、Firefox浏览器、谷歌浏览器、QQ浏览器等等。
第一网页测试访问请求是测试浏览器集群中的测试浏览器打开浏览器时发出的访问请求,该访问请求中可以是请求打开浏览器的主页,也可以是直接根据网址打开的待测试网页的请求,测试浏览器集群中每一个测试浏览器发送的第一网页测试访问请求,访问的是同一个网址,获取的响应页面是相同的。第一响应页面是根据第一网页测试访问请求获取到的响应数据。浏览器服务器是web服务器,是提供网上信息浏览服务的网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览,可以放置数据文件,让全世界下载。
步骤S240,代理服务器向测试浏览器发送第一响应页面及同步脚本,使同步脚本注入到测试浏览器集群中各测试浏览器中,对各测试浏览器的操作信息及包含操作信息的协议数据流进行监控。
其中,同步脚本是根据测试需要采用脚本语言(如:JavaScript,VBscript等)编写的脚本程序,编写的脚本程序需满足能够调用测试浏览器的操作信息获取接口,及调用测试浏览器的执行接口的功能,使同步脚本在各测试浏览器中运行,实现调用浏览器的操作信息获取接口监控用户操作,及调用浏览器执行接口执行相同的操作。操作信息是测试人员对测试浏览器进行操作时监控到的数据,如:点击、滑动等。包含操作信息的协议数据流是被测试人员操作的测试浏览器发送的包含操作信息的数据流。测试浏览器集群中各测试浏览器的同步脚本各自监控是否接收到操作信息或接收到包含操作信息的协议数据流。
步骤S260,当测试浏览器集群中的任一测试浏览器中被同步脚本监控到操作信息时,向测试浏览器集群中的其他测试浏览器发送包含操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含操作信息的协议数据流,控制其他测试浏览器执行与操作信息对应的操作。
其中,当测试人员选择了测试浏览器集群中的一个测试浏览器进行操作时,***作测试浏览器中的同步脚本会监控到有操作信息,同步脚本记录操控信息,如:同步脚本监控到点击操作,同步脚本存储成key:Value格式,key是***作元素的id,value是操作动作点击。测试浏览器集群中的其他测试浏览器是,测试浏览器集群中除被监控到操作信息的测试浏览器以外的测试浏览器。协议数据流是测试浏览器集群中除被监控到操作信息的测试浏览器通过websoke(websoke是基于TCP的全双工通信协议,是独立的、创建在TCP上的协议)传输到测试浏览器集群中的其他测试浏览器的数据流,如:除被监控到操作信息的测试浏览器通过websoket把操作信息传给容器服务器,容器服务器再把操作信息发送给其他测试浏览器,容器服务器是与代理服务器部署在一起的服务器。
在一个场景中,用户通过点击触发了测试浏览器集群中测试浏览器A的当前页面的确认控件,测试浏览器A中的同步脚本监控到当前页面的确认控件被点击,同步脚本记录当前页面的确认控件被触发的信息,测试浏览器A中的同步脚本将当前页面的确认控件被触发的信息作为操作信息,通过websoke将操作信息打包成协议数据流发送至测试浏览器集群中除测试浏览器A以外的所有测试浏览器。接收到该协议数据流的测试浏览器的同步脚本,根据协议数据流中的操作信息,控制测试浏览器执行与所述操作信息对应的操作。
上述多浏览器网页访问同步方法中,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,给测试浏览器集群中的测试浏览器反馈响应页面的同时,为测试浏览器注入同步脚本,使同步脚本监控各测试浏览器的操作信息及包含操作信息协议数据流,监控到操作信息时,向其他测试浏览器发送操作信息,同步脚本监控到包含操作信息的协议数据流时,根据操作信息控制测试浏览器执行对应操作,实现可以将任意测试浏览器作为主测试浏览器,使其他测试浏览器同步主测试浏览器的操作。在进行网页兼容性测试时,可以随意更换主测试浏览器对待测试网页进行操作,完成网页兼容性测试,提高了网页兼容性测试的效率。本申请方案可以应用在智慧安防如安全监控等场景中,从而推动智慧城市的建设。
在一个实施例中,同步脚本根据监控到包含操作信息的协议数据流,控制测试浏览器执行与操作信息对应的操作的方式,包括:
同步脚本根据操作信息进行解析,获取key中的数据及value的数据;同步脚本根据key中的数据及value的数据调用测试浏览器的执行接口,使测试浏览器执行与操作信息对应的操作。
其中,同步脚本监控到容器服务器发送的协议数据流时,获取协议数据流中的操作信息,解析操作信息,确定对应的操作,同步脚本调用测试浏览器的执行接口执行相同的操作,如:协议数据流中的操作信息是key的操作元素的id为XXX,Value为操作动作点击格式的数据,获取key中的数据及value的数据,确定是点击了id为XXX的操作元素,同步脚本调用测试浏览器的执行接口,控制测试浏览器执行点击了id为XXX的操作元素的操作。通过同步脚本根据操作信息控制测试浏览器执行与对应操作,实现主从测试浏览器实现同步操作。
在一个实施例中,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于第一网页访问请求向浏览器服务器获取对应的第一响应页面的步骤之前,多浏览器网页访问同步方法还包括:
当代理服务器接收到同步访问配置请求时,获取同步访问配置请求中的配置信息,配置信息包括需同步访问的服务器统一资源定位符;代理服务器根据需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器中。
其中,同步访问配置请求是用于添加需要测试的网页地址,并对需要测试的网页地址进行预处理。服务器统一资源定位符指的是在Web服务器存储的网页地址,需同步访问的服务器统一资源定位符指的是需要测试的网页在Web服务器存储的网页地址。对需要测试的网页地址进行预处理指的是,将根据需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器中,使测试浏览器集群中的测试浏览器通过本地统一资源定位符,可以获取对应需要测试网页的响应页面。通过根据需同步访问的统一资源定位符生成对应的本地统一资源定位符,使测试浏览器集群中的测试浏览器通过本地统一资源定位符,获得相同的响应页面。
在一个实施例中,该多浏览器网页访问同步方法还包括:当代理服务器接收到主测试浏览器的第二网页测试访问请求时,获取第二网页测试访问请求中的本地统一资源定位符,主测试浏览器为测试浏览器集群中被同步脚本监控到操作信息的测试浏览器;代理服务器根据本地统一资源定位符,获取对应的服务器统一资源定位符;代理服务器将第二网页测试访问请求中的本地统一资源定位符修改为服务器统一资源定位符,获得修改后的第二网页测试访问请求;代理服务器将修改后的第二网页测试访问请求发送至浏览器服务器;代理服务器接收浏览器服务器根据修改后的第二网页测试访问请求反馈的第二响应页面;代理服务器向主测试浏览器发送第二响应页面。
其中,第二网页测试访问请求是,主测试浏览器在发送第一网页测试访问请求以后发送的请求,所有在第一网页测试访问请求以后主测试浏览器发送的请求都为第二网页测试访问请求。主测试浏览器为测试浏览器集群中被同步脚本监控到操作信息的测试浏览器。第二响应页面是根据第二网页测试访问请求获取到的响应数据,即第二网页测试访问请求中的URL对应网页。
在一个实施例中,接收浏览器服务器根据修改后的第二网页测试访问请求反馈的第二响应页面的步骤之后,该多浏览器网页访问同步方法还包括:代理服务器将本地统一资源定位符和第二响应页面采用键值对的方式存储至容器服务器中。
其中,键值对是每个键后面对应着相应的值。该值为响应页面,键为本地统一资源定位符。可以通过本地统一资源定位符确定唯一的响应页面。当主测试浏览器再次发送相同本地统一资源定位符的第二网页测试访问请求时,就更新对应键值对中的值,如:主测试浏览器发送携带本地统一资源定位符A的第二网页测试访问请求,代理服务器将第二网页测试访问请求中的本地统一资源定位符A修改为服务器统一资源定位符A1,获得修改后的第二网页测试访问请求;向浏览器服务器转发修改后的第二网页测试访问请求,获取第二响应页面a,将本地统一资源定位符A和第二响应页面a采用键值对的方式存储至关联容器中;当代理服务器再接收到主测试浏览器发送携带本地统一资源定位符A的第二网页测试访问请求时,用获取第二响应页面a的方式向浏览器服务器获取第二响应页面b,将关联容器中本地统一资源定位符A对应的第二响应页面a替换为第二响应页面b。通过采用键值对的方式存储本地统一资源定位符和第二响应页面,在从测试浏览器访问时,可直接将第二响应页面反馈给从测试浏览器。通过实时更新对应键值对中的值,可以使从测试浏览器获得的第二响应页面与主测试浏览器获取的一致。
在一个实施例中,该多浏览器网页访问同步方法还包括:当代理服务器接收到从测试浏览器根据主测试浏览器的操作信息发送的第三网页测试访问请求时,获取第三网页测试访问请求中的本地统一资源定位符,从测试浏览器为测试浏览器集群中除主测试浏览器以外的测试浏览器,第三网页测试访问请求中的本地统一资源定位符与第二网页测试访问请求中的本地统一资源定位符相同;代理服务器根据本地统一资源定位符,从容器服务器中获取本地统一资源定位符对应的第二响应页面;向从测试浏览器发送第二响应页面。
其中,第三网页测试访问请求是从测试浏览器在发送第一网页测试访问请求以后发送的请求,所有在第一网页测试访问请求以后从测试浏览器发送的请求都为第二网页测试访问请求。从测试浏览器发送的请求都是在主测试浏览器发送请求的前提下对应发送的,即:主测试浏览发送第二网页测试访问请求,用于获取响应页面c,从测试浏览器根据同步脚本根据监控到包含所述操作信息的协议数据流,控制从测试浏览器发送第三网页测试访问请求用于获取响应页面c。通过从容器服务器中获取本地统一资源定位符对应的第二响应页面,使从测试浏览器获得的第二响应页面与主测试浏览器获取的一致。
在一个实施例中,同步脚本监控测试浏览器的操作信息的方式,包括:
同步脚本调用测试浏览器的操作信息获取接口监控测试浏览器的操作信息。
其中,操作信息获取接口是测试浏览器开放用于获取操作信息的接口。当同步脚本调用测试浏览器的操作信息获取接口获取到操作信息时,则为监控到操作信息,记录操作信息,如:同步脚本监控到点击操作,同步脚本存储成key:Value格式,key是***作元素的id,value是操作动作点击。将操作信息通过websoket把操作信息传给容器服务器,容器服务器再把操作信息发送给测试浏览器集群中的其他测试浏览器。通过调用测试浏览器的操作信息获取接口监控测试浏览器的操作信息,确定是否为主测试浏览器。
在一个实施例中,多浏览器网页访问同步方法还包括:同步脚本注入到测试浏览器集群中各测试浏览器中后,同步脚本开启测试浏览器的自动录屏进行操作录制,获得操作录制数据,将所述录制数据上传至区块链中。
其中,测试浏览器集群中的各个测试浏览器的自动录屏开启,由各测试浏览器注入的同步脚本开启自动录屏。当测试开始时,同步脚本开启测试浏览器的自动录屏进行操作录制,获得操作录制数据,操作录制数据包括日志、操作截图和视频等,后续可根据记录的日志、操作截图和视频进行结果分析。可以是在测试浏览器的被注入同步脚本后,通过同步脚本开启自动录屏功能,自动记录的日志、操作截图等,后续可根据记录的日志、操作截图进行结果分析。
基于录制数据得到对应的摘要信息,具体来说,摘要信息由录制数据进行散列处理得到,比如利用sha256s算法处理得到。将摘要信息上传至区块链可保证其安全性和对用户的公正透明性。用户设备可以从区块链中下载得该摘要信息,以便查证录制数据是否被篡改。
在一个实施例中,一种多浏览器网页访问同步方法,该实施例涉及测试浏览器集群、代理服务器、容器服务器和浏览器服务器,测试浏览器集群包括二个以上从测试浏览器,代理服务器和容器服务器部署在一起,等同于代理服务器的辅助设备,测试浏览器集群中的测试浏览器安装在终端上,测试浏览器发出或接收的数据是通过终端发出或接收的。结合一个具体的多浏览器网页访问同步过程进行举例说明。
启动代理服务器和容器服务器,代理服务器负责截取测试浏览器的网页测试访问请求(网页测试访问请求包括:第一网页测试访问请求、第二网页测试访问请求和第三网页测试访问请求)和网页测试访问请求对应的响应数据,代理服务器把截取到的响应数据放在容器服务器中,代理服务器提供给所有测试浏览器。
代理服务器在测试浏览器集群中的每个测试浏览器第一次访问时注入同步脚本到各测试浏览器,测试浏览器集群中的每个测试浏览器注入的同步脚本,调用测试浏览器的操作信息获取接口监控用户操作(即操作信息),如页面点击、输入数据等,监控到操作信息的测试浏览器为主测试浏览器,主测试浏览器的操作信息会通过websocket同步到其他测试浏览器(从测试浏览器),多个从测试浏览器中的同步脚本根据接收到的操作信息,与主测试浏览器进行相同的操作。从而与主测试浏览器的内容保持一致,在测试浏览器获取响应页面时,从从容器服务器中获取本地统一资源定位符对应的第二响应页面,使从测试浏览器获得的第二响应页面与主测试浏览器获取的一致。从而实现了内容与操作在主从测试浏览器同步的效果,实现批量管理测试,自主选择主从测试浏览器。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图1所示,提供了一种多浏览器网页访问同步***,包括:测试浏览器集群102、代理服务器104和浏览器服务器106,其中:
当代理服务器104接收到测试浏览器集群102中的测试浏览器发送的第一网页测试访问请求时,基于第一网页测试访问请求向浏览器服务器106获取对应的第一响应页面。
代理服务器104向测试浏览器发送第一响应页面及同步脚本,使同步脚本注入到测试浏览器集群102中各测试浏览器中,对各测试浏览器的操作信息及包含操作信息的协议数据流进行监控。
当测试浏览器集群102中的任一测试浏览器中被同步脚本监控到操作信息时,向测试浏览器集群102中的其他测试浏览器发送包含操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含操作信息的协议数据流,控制其他测试浏览器执行与操作信息对应的操作。
在一个实施例中,如图3所示,测试浏览器集群102中各测试浏览器的同步脚本还用于:根据操作信息进行分析,确定操作数据;根据操作数据调用测试浏览器的执行接口,使测试浏览器执行与操作信息对应的操作。
在一个实施例中,该多浏览器网页访问同步***,还包括容器服务器108:代理服务器104在接收到同步访问配置请求时,获取同步访问配置请求中的配置信息,配置信息包括需同步访问的服务器统一资源定位符;代理服务器104根据需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器108中。
在一个实施例中,该多浏览器网页访问同步***的代理服务器104还用于:
当接收到主测试浏览器的第二网页测试访问请求时,获取第二网页测试访问请求中的本地统一资源定位符,主测试浏览器为测试浏览器集群102中被同步脚本监控到操作信息的测试浏览器;根据本地统一资源定位符,获取对应的服务器统一资源定位符;将第二网页测试访问请求中的本地统一资源定位符修改为服务器统一资源定位符,获得修改后的第二网页测试访问请求;将修改后的第二网页测试访问请求发送至浏览器服务器106;接收浏览器服务器106根据修改后的第二网页测试访问请求反馈的第二响应页面;向主测试浏览器发送第二响应页面。
在一个实施例中,该多浏览器网页访问同步***的代理服务器104还用于:将本地统一资源定位符和第二响应页面采用键值对的方式存储至容器服务器108中。
在一个实施例中,该多浏览器网页访问同步***的代理服务器104还用于:当接收到从测试浏览器根据主测试浏览器的操作信息发送的第三网页测试访问请求时,获取第三网页测试访问请求中的本地统一资源定位符,从测试浏览器为测试浏览器集群102中除主测试浏览器以外的测试浏览器,第三网页测试访问请求中的本地统一资源定位符与第二网页测试访问请求中的本地统一资源定位符相同;根据本地统一资源定位符,从容器服务器108中获取本地统一资源定位符对应的第二响应页面;向从测试浏览器发送第二响应页面。
在一个实施例中,测试浏览器集群102中各测试浏览器的同步脚本还用于:调用测试浏览器的操作信息获取接口监控测试浏览器的操作信息。
在一个实施例中,测试浏览器集群102中各测试浏览器的同步脚本还用于:同步脚本注入到测试浏览器集群中各测试浏览器中后,同步脚本开启测试浏览器的自动录屏进行操作录制,获得操作录制数据,将录制数据上传至区块链中。
关于多浏览器网页访问同步***的具体限定可以参见上文中对于多浏览器网页访问同步方法的限定,在此不再赘述。上述多浏览器网页访问同步***中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多浏览器网页访问同步方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种多浏览器网页访问同步方法,所述方法包括:
当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页测试访问请求向浏览器服务器获取对应的第一响应页面;
所述代理服务器向所述测试浏览器发送所述第一响应页面及同步脚本,使所述同步脚本注入到所述测试浏览器集群中各测试浏览器中,对各所述测试浏览器的操作信息及包含所述操作信息的协议数据流进行监控;
当所述测试浏览器集群中的任一所述测试浏览器中被同步脚本监控到操作信息时,向所述测试浏览器集群中的其他测试浏览器发送包含所述操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含所述操作信息的协议数据流,控制其他测试浏览器执行与所述操作信息对应的操作。
2.根据权利要求1所述的方法,其特征在于,所述同步脚本根据监控到包含所述操作信息的协议数据流,控制测试浏览器执行与所述操作信息对应的操作的方式,包括:
所述同步脚本根据所述操作信息进行解析,获取key中的数据及value的数据;
所述同步脚本根据所述key中的数据及value的数据调用测试浏览器的执行接口,使所述测试浏览器执行与所述操作信息对应的操作。
3.根据权利要求1所述的方法,其特征在于,当代理服务器接收到测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页访问请求向所述浏览器服务器获取对应的第一响应页面的步骤之前,所述方法还包括:
当所述代理服务器接收到同步访问配置请求时,获取同步访问配置请求中的配置信息,所述配置信息包括需同步访问的服务器统一资源定位符;
所述代理服务器根据所述需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述代理服务器接收到主测试浏览器的第二网页测试访问请求时,获取所述第二网页测试访问请求中的本地统一资源定位符,所述主测试浏览器为所述测试浏览器集群中被同步脚本监控到操作信息的测试浏览器;
所述代理服务器根据所述本地统一资源定位符,获取对应的服务器统一资源定位符;
所述代理服务器将所述第二网页测试访问请求中的所述本地统一资源定位符修改为所述服务器统一资源定位符,获得修改后的第二网页测试访问请求;
所述代理服务器将所述修改后的第二网页测试访问请求发送至浏览器服务器;
所述代理服务器接收所述浏览器服务器根据所述修改后的第二网页测试访问请求反馈的第二响应页面;
所述代理服务器向所述主测试浏览器发送所述第二响应页面。
5.根据权利要求4所述的方法,其特征在于,所述接收所述浏览器服务器根据所述修改后的第二网页测试访问请求反馈的第二响应页面的步骤之后,所述方法还包括:
所述代理服务器将所述本地统一资源定位符和所述第二响应页面采用键值对的方式存储至容器服务器中。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当所述代理服务器接收到从测试浏览器根据所述主测试浏览器的操作信息发送的第三网页测试访问请求时,获取所述第三网页测试访问请求中的本地统一资源定位符,所述从测试浏览器为所述测试浏览器集群中除主测试浏览器以外的测试浏览器,所述第三网页测试访问请求中的本地统一资源定位符与所述第二网页测试访问请求中的本地统一资源定位符相同;
所述代理服务器根据所述本地统一资源定位符,从容器服务器中获取所述本地统一资源定位符对应的所述第二响应页面;
所述代理服务器向所述从测试浏览器发送所述第二响应页面。
7.根据权利要求1所述的方法,其特征在于,所述同步脚本监控测试浏览器的操作信息的方式,包括:
所述同步脚本调用测试浏览器的操作信息获取接口监控所述测试浏览器的操作信息。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述同步脚本注入到所述测试浏览器集群中各测试浏览器中后,所述同步脚本开启测试浏览器的自动录屏进行操作录制,获得操作录制数据,将所述录制数据上传至区块链中。
9.一种多浏览器网页访问同步***,其特征在于,所述***包括:代理服务器、浏览器服务器、测试浏览器集群;
当所述代理服务器接收到所述测试浏览器集群中的测试浏览器发送的第一网页测试访问请求时,基于所述第一网页测试访问请求向浏览器服务器获取对应的第一响应页面;
所述代理服务器向所述测试浏览器发送所述第一响应页面及同步脚本,使所述同步脚本注入到所述测试浏览器集群中各测试浏览器中,对各所述测试浏览器的操作信息及包含所述操作信息的协议数据流进行监控;
当所述测试浏览器集群中的任一所述测试浏览器中被同步脚本监控到操作信息时,向所述测试浏览器集群中的其他测试浏览器发送包含所述操作信息的协议数据流,使其他测试浏览器的同步脚本根据监控到包含所述操作信息的协议数据流,控制其他测试浏览器执行与所述操作信息对应的操作。
10.根据权利要求9所述的***,其特征在于,所述代理服务器在接收到同步访问配置请求时,获取同步访问配置请求中的配置信息,所述配置信息包括需同步访问的服务器统一资源定位符;
所述代理服务器根据所述需同步访问的统一资源定位符生成对应的本地统一资源定位符,存储至容器服务器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010344986.XA CN111552643A (zh) | 2020-04-27 | 2020-04-27 | 多浏览器网页访问同步方法、*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010344986.XA CN111552643A (zh) | 2020-04-27 | 2020-04-27 | 多浏览器网页访问同步方法、*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111552643A true CN111552643A (zh) | 2020-08-18 |
Family
ID=71998183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010344986.XA Pending CN111552643A (zh) | 2020-04-27 | 2020-04-27 | 多浏览器网页访问同步方法、*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111552643A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988263A (zh) * | 2021-02-10 | 2021-06-18 | 青岛希望鸟科技有限公司 | 一种网页同步的方法、*** |
CN116980236A (zh) * | 2023-09-25 | 2023-10-31 | 腾讯科技(深圳)有限公司 | 网络安全检测方法、装置、设备、介质和程序产品 |
-
2020
- 2020-04-27 CN CN202010344986.XA patent/CN111552643A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988263A (zh) * | 2021-02-10 | 2021-06-18 | 青岛希望鸟科技有限公司 | 一种网页同步的方法、*** |
CN112988263B (zh) * | 2021-02-10 | 2023-11-28 | 青岛希望鸟科技有限公司 | 一种网页同步的方法、*** |
CN116980236A (zh) * | 2023-09-25 | 2023-10-31 | 腾讯科技(深圳)有限公司 | 网络安全检测方法、装置、设备、介质和程序产品 |
CN116980236B (zh) * | 2023-09-25 | 2024-01-09 | 腾讯科技(深圳)有限公司 | 网络安全检测方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10523784B2 (en) | Capturing and replaying application sessions using resource files | |
CN109766262B (zh) | 接口数据处理方法、自动化测试方法、装置、设备和介质 | |
CN108304498B (zh) | 网页数据采集方法、装置、计算机设备和存储介质 | |
US11477298B2 (en) | Offline client replay and sync | |
CN104767775B (zh) | 网页应用消息推送方法及*** | |
CN110990205B (zh) | 接口调用测试方法、装置和计算机可读存储介质 | |
CN111901192B (zh) | 一种页面访问数据的统计方法及装置 | |
CN110688598B (zh) | 业务参数采集方法、装置、计算机设备和存储介质 | |
CN112073405A (zh) | 网页数据加载方法、装置、计算机设备及存储介质 | |
US10877825B2 (en) | System for offline object based storage and mocking of rest responses | |
CN107181779B (zh) | 访问请求的处理方法、装置和*** | |
CN109787974B (zh) | 报文数据流生成方法、装置、计算机设备和存储介质 | |
CN111859224A (zh) | 基于节点服务器的服务端渲染方法、装置和计算机设备 | |
CN111431767B (zh) | 多浏览器资源同步方法、装置、计算机设备和存储介质 | |
CN111552643A (zh) | 多浏览器网页访问同步方法、*** | |
CN112241298A (zh) | 页面显示方法及装置、存储介质、电子装置 | |
WO2013137982A1 (en) | Method and apparatus for intelligent capture of document object model events | |
CN113821254A (zh) | 接口数据处理方法、装置、存储介质及设备 | |
CN112905936A (zh) | 页面录制动画生成、页面操作日志查询方法和计算机设备 | |
CN114915565B (zh) | 网络调试的方法和*** | |
CN115686904A (zh) | 网页诊断方法、设备及*** | |
CN111371643B (zh) | 验证方法、设备及存储介质 | |
Panum et al. | Kraaler: A user-perspective web crawler | |
CN109981738B (zh) | 一种适用于窄带物联网应用的云服务器 | |
CN110505258A (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 |