CN111368231B - 一种异构冗余架构网站的测试方法及装置 - Google Patents
一种异构冗余架构网站的测试方法及装置 Download PDFInfo
- Publication number
- CN111368231B CN111368231B CN202010107417.3A CN202010107417A CN111368231B CN 111368231 B CN111368231 B CN 111368231B CN 202010107417 A CN202010107417 A CN 202010107417A CN 111368231 B CN111368231 B CN 111368231B
- Authority
- CN
- China
- Prior art keywords
- website
- webpage
- heterogeneous
- initial
- resource information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000012360 testing method Methods 0.000 title claims abstract description 61
- 230000006870 function Effects 0.000 claims abstract description 36
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 claims abstract description 19
- 229910052711 selenium Inorganic materials 0.000 claims abstract description 19
- 239000011669 selenium Substances 0.000 claims abstract description 19
- 230000003068 static effect Effects 0.000 claims description 170
- 230000008569 process Effects 0.000 claims description 19
- 230000014509 gene expression Effects 0.000 claims description 13
- 230000008571 general function Effects 0.000 claims description 10
- 230000009193 crawling Effects 0.000 claims description 6
- 238000004088 simulation Methods 0.000 claims description 6
- 238000010998 test method Methods 0.000 claims description 2
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- 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/3604—Software analysis for verifying properties of programs
- G06F11/3608—Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
-
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供了一种异构冗余架构网站的测试方法及装置,其中,方法包括:调用configparser读取预先提取的初始网站的网页资源信息;调用selenium中的find‑element‑by‑css‑selector方法,使得find‑element‑by‑css‑selector方法依据网站资源信息,对异构冗余架构网站进行资源定位,得到异构冗余架构网站中是否存在网站资源信息的结果,通过selenium中的find‑element‑by‑css‑selector(css‑name).click()方法和find‑element‑by‑css‑selector(css‑name).send‑keys(textinfo)方法模拟网页操作,测试异构冗余架构网站中的网页是否对用户提供正常功能。本申请可以实现对异构冗余架构网站是否能够向用户提供正常功能的测试。
Description
技术领域
本申请涉及电子信息领域,尤其涉及一种异构冗余架构网站的测试方法及装置。
背景技术
在当今网络环境下,Web服务系统作为重要的服务承载和提供平台,是政府、企业以及个人在互联网上的虚拟代表,汇集了海量价值信息,如用户信息、企业数据、金融财政、商业机密、知识产权、客户订单信息等。其重要程度不言而喻。因此,Web服务成为网络黑客的主要攻击对象。而在当前Web服务的网络环境中,相当多的软件存在着各种已知和未知的漏洞及后门,因此,web服务系统也存在漏洞及后门,为攻击者提供了便利的攻击途径。网络黑客利用各种途径、各种攻击工具、各种欺骗手段来获取其想得到的信息。
异构冗余架构的网站能够有效防止来自网络的安全威胁,其安全性在工程实践中已经得到验证。在对异构冗余架构的网站进行部署和测试过程中,测试过程往往是制约部署进度的制约因素。
因此,需要一种对异构冗余架构的网站的测试方案,即测试异构冗余架构网站是否能够提供正常服务,其中,正常服务指能够正常获取网页的资源信息,完成网页实现的互动功能。
发明内容
本申请提供了一种方法异构冗余架构的网站的测试方法及装置,目的在于提供对异构冗余架构网站进行测试的方案。
为了实现上述目的,本申请提供了以下技术方案:
本申请提供了一种异构冗余架构网站的测试方法,包括:
调用configparser读取预先提取的初始网站的网页资源信息;所述初始网站为所述异构冗余架构网站异构冗余前的网站;所述网页资源信息为所述初始网站的网页模板中通用功能的网页资源信息;
调用selenium中的find-element-by-css-selector方法,使得所述find-element-by-css-selector方法依据所述网站资源信息,对所述异构冗余架构网站进行资源定位,得到所述异构冗余架构网站中是否存在所述网站资源信息的结果;
通过所述selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试所述异构冗余架构网站中的网页是否对用户提供正常功能。
可选的,还包括:对所述初始网站与所述异构冗余架构网站,分别从网页静态资源信息、所述网页静态资源信息中的URL网页、状态码、静态资源目录结构、目录结构一致的静态资源的内容进行对比;
所述状态码是向所述URL网页发送request请求,所述URL网页反馈的状态码;
所述静态资源目录结构是通过访问网站静态资源URL,得到的静态资源的目录结构。
可选的,对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息进行对比,包括:
调用requests模块,使得所述requests模块分别爬取所述初始网站和所述异构冗余架构网站的网页静态资源信息;
分别以消息队列的形式,保存所述初始网站的网页静态资源信息和所述异构冗余架构网站的网页静态资源信息;
对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息,逐行对比是否相同。
可选的,对所述初始网站的状态码与所述异构冗余架构网站的状态码进行对比,包括:
利用正则表达式,分别对所述初始网站和所述异构冗余架构网站的网页静态资源信息中的URL网页进行提取,得到所述初始网站的URL网页和所述异构冗余架构网站的URL网页;
分别向所述初始网站的URL网页和所述异构冗余架构网站的URL网页发送requests请求,得到第一状态码和第二状态码;所述第一状态码为所述初始网站的URL网页反馈的状态码;所述第二状态码为所述异构冗余架构网站的URL网页反馈的状态码;
依据所述第一状态码,检验所述第二状态码。
可选的,所述分别对所述初始网站的静态资源目录结构与所述异构冗余架构网站的静态资源目录结构进行对比,包括:
通过正则表达式的方式,分别爬取所述初始网站和所述异构冗余架构网站的静态资源URL,得到所述初始网站的静态资源URL和所述异构冗余架构网站的静态资源URL;
分别访问所述初始网站和所述异构冗余架构网站的静态资源URL指示的URL地址,得到所述初始网站的静态资源和所述异构冗余架构网站的静态资源;
通过difflib模块,比较所述初始网站的静态资源的目录结构和所述异构冗余架构网站的静态资源的目录结构是否一致。
本申请还提供了一种异构冗余架构网站的测试装置,包括:
第一调用模块,用于调用configparser读取预先提取的初始网站的网页资源信息;所述初始网站为所述异构冗余架构网站异构冗余前的网站;所述网页资源信息为所述初始网站的网页模板中通用功能的网页资源信息;
第二调用模块,用于调用selenium中的find-element-by-css-selector方法,使得所述find-element-by-css-selector方法依据所述网站资源信息,对所述异构冗余架构网站进行资源定位,得到所述异构冗余架构网站中是否存在所述网站资源信息的结果;
模拟模块,用于通过所述selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试所述异构冗余架构网站中的网页是否对用户提供正常功能。
可选的,该装置还包括完整性测试模块,用于对所述初始网站与所述异构冗余架构网站,分别从网页静态资源信息、所述网页静态资源信息中的URL网页、状态码、静态资源目录结构、目录结构一致的静态资源的内容进行对比;
所述状态码是向所述URL网页发送request请求,所述URL网页反馈的状态码;
所述静态资源目录结构是通过访问网站静态资源URL,得到的静态资源的目录结构。
可选的,所述完整性测试模块,用于对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息进行对比,包括:
所述完整性测试模块,具体用于调用requests模块,使得所述requests模块分别爬取所述初始网站和所述异构冗余架构网站的网页静态资源信息;
分别以消息队列的形式,保存所述初始网站的网页静态资源信息和所述异构冗余架构网站的网页静态资源信息;
对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息,逐行对比是否相同。
可选的,所述完整性测试模块,用于对所述初始网站的状态码与所述异构冗余架构网站的状态码进行对比,包括:
所述完整性测试模块,具体用于利用正则表达式,分别对所述初始网站和所述异构冗余架构网站的网页静态资源信息中的URL网页进行提取,得到所述初始网站的URL网页和所述异构冗余架构网站的URL网页;
分别向所述初始网站的URL网页和所述异构冗余架构网站的URL网页发送requests请求,得到第一状态码和第二状态码;所述第一状态码为所述初始网站的URL网页反馈的状态码;所述第二状态码为所述异构冗余架构网站的URL网页反馈的状态码;
依据所述第一状态码,检验所述第二状态码。
可选的,所述完整性测试模块,用于分别对所述初始网站的静态资源目录结构与所述异构冗余架构网站的静态资源目录结构进行对比,包括:
所述完整性测试模块,具体用于通过正则表达式的方式,分别爬取所述初始网站和所述异构冗余架构网站的静态资源URL,得到所述初始网站的静态资源URL和所述异构冗余架构网站的静态资源URL;
分别访问所述初始网站和所述异构冗余架构网站的静态资源URL指示的URL地址,得到所述初始网站的静态资源和所述异构冗余架构网站的静态资源;
通过difflib模块,比较所述初始网站的静态资源的目录结构和所述异构冗余架构网站的静态资源的目录结构是否一致。
本申请所述的异构冗余架构网站的测试方法及装置中,一方面,调用configparser读取预先提取的初始网站的网页资源信息;其中,初始网站为异构冗余架构网站异构冗余前的网站,网页资源信息为初始网站的网页模板中通用功能的网页资源信息。调用selenium中的find-element-by-css-selector方法,使得find-element-by-css-selector方法依据该网站资源信息,对异构冗余架构网站进行资源定位,得到该异构冗余架构网站中是否存在该网站资源信息的结果。
另一方面,通过selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试异构冗余架构网站中的网页是否对用户提供正常功能。
综上所述,本申请实现对异构冗余架构网站的网站资源信息的定位测试,以及模拟网页操作,对异构冗余架构网站中的网页是否对用户提供正常服务功能的测试。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种异构冗余架构网站的测试方法;
图2为本申请实施例公开的一种异构冗余架构网站的测试装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的异构冗余架构网站的测试方法所涉及的python模块包括:urllib、re、filecmp、difflib、sys、bs4、queue、requests、os、selenium和configparser。
图1为本申请实施例提供的一种异构冗余架构网站的测试方法,包括以下步骤:
S101、调用configparser读取预先提取的初始网站的网页资源信息。
在本实施例中,初始网站为异构冗余架构网站异构冗余前的网站,即对初始网站进行异构冗余得到本申请实施例中的异构冗余架构网站。
网页资源信息为初始网站的网页模板中通用功能的网页资源信息。
具体的,在本步骤中,预先提取的初始网站的网页资源信息可以通过人工对初始网站的网页模板的通用功能的网页资源信息进行提取,并将提取的网页资源信息通过预设程序,导入预设的配置文件。其中,通用功能的网页资源信息可以包括:登录和访问后台等网站必要信息元素的地址等,当然,在实际中,初始网站的网页模板的通用功能的网页资源信息还可以包括其他内容,本实施例不对具体内容作限定,只要是初始网站的网页模板的通过功能的网页资源信息即可。
在本步骤中,调用configparser,使得configparser从预设的配置文件中读取事先提取的初始网站的网页模板中通过功能的网页资源信息。
S102、调用selenium中的find-element-by-css-selector方法,使得find-element-by-css-selector方法依据网站资源信息,对异构冗余架构网站进行资源定位,得到异构冗余架构网站中是否存在网站资源信息的结果。
在本实施例中,Selenium是一个用于Web应用程序测试的工具。find-element-by-css-selector方法是python中的一个方法,find-element-by-css-selector方法的功能为利用网页的定位符定位网页元素。
find-element-by-css-selector方法依据网站资源信息,对异构冗余架构网站进行资源定位,即判断异构冗余架构网站中是否存在该网站资源信息,得到异构冗余架构网站中是否存在网站资源信息的定位结果。
S103、通过selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试异构冗余架构网站中的网页是否对用户提供正常功能。
在本实施例中,find-element-by-css-selector(css-name).click()方法的功能为通过网页定位符进行定位并模拟点击。find-element-by-css-selector(css-name).send-keys(textinfo)方法的功能为通过网页定位符进行定位并模拟输入文本。
具体的,在本步骤中,通过selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作的具体过程可以包括:通过网页定位符定位网页元素模拟点击、文本输入等操作。
在本实施例中,正常功能指能够正常访问网页资源,能够进行正常网页互动。
具体的,在模拟网页操作的结果为上述函数正常运行不报错,表示异构冗余架构网站中的网页可以对用户提供正常功能,在模拟网页操作的结果为上述函数报错:无法定位网页元素,表示异构冗余架构网站中的网页不能对用户提供正常功能。其中,上述函数表示find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法运行过程中所使用到的函数。
在本实施例中,由于对异构冗余架构网站是否能够对用户提供正常功能的测试过程,是通过程序自动实现测试的过程,因此,本实施例提供对异构冗余架构网站是否能够对用户提供正常功能的测试效率得到提高。
由于对异构冗余架构网站是否能够对用户提供正常功能的测试效率得到提高,并且,针对异构冗余架构网站,测试过程是制约部署进度的制约因素,因此,本实施例可以提高对异构冗余架构网站的部署效率。
在本申请实施例中,除了测试异构冗余架构网站是否能够向用户提供正常功能外,还可以实现对异构冗余架构网站的功能完整性的测试。其中,对异构冗余架构网站的功能完整性的测试可以包括:分别对初始网站与异构冗余架构网站从以下方面进行对比。具体对比方面可以包括:网页静态资源信息、网页静态资源信息中的URL网页、状态码、静态资源目录结构,以及目录结构一致的静态资源的内容。其中,状态码是向URL网页发送request请求,该URL网页反馈的状态码。静态资源目录结构是通过访问网站静态资源URL,得到的静态资源的目录结构。
具体的,对初始网站与异构冗余架构网站的网页静态资源信息进行对比过程,可以包括以下步骤A1~步骤A3:
A1、调用requests模块,使得requests模块分别爬取初始网站和异构冗余架构网站的网页静态资源信息。
在本步骤中,使得requests模块分别爬取初始网站和异构冗余架构网站的网页静态资源信息的过程为现有技术,这里不再赘述。
A2、分别以消息队列的形式,保存初始网站的网页静态资源信息和异构冗余架构网站的网页静态资源信息。
在本步骤中,分别将初始网站的网页静态资源信息,以消息队列的形式进行存储,并且,将异构冗余架构网站的网页静态资源信息,以消息队列的形式进行存储。
A3、对初始网站与异构冗余架构网站的网页静态资源信息,进行逐行对比是否相同。
具体的,在本步骤中,分别对初始网站对应的消息队列中的网页静态资源,和异构冗余架构网站对应的消息队列中的网页静态资源,逐行进行比较,即比较每行的网页静态资源是否相同。进一步的,还可以记录网页静态资源相同的行数。
具体的,对初始网站和异构冗余架构网站的网页静态资源信息中的URL网页进行对比的过程,可以包括以下步骤B1~步骤B2:
B1、利用正则表达式从步骤A1得到的网页静态资源信息中提取URL网页,得到初始网站的URL网页和异构冗余架构网站的URL网页。
B2、比较初始网站的URL网页和异构冗余架构网站的URL网页的内容是否相同。
在本步骤中,具体的比较过程为现有技术,这里不再赘述。
具体的,对初始网站和异构冗余架构网站的状态码进行对比的过程,可以包括以下步骤C1~步骤C2:
C1、分别向初始网站的URL网页和异构冗余架构网站的URL网页发送requests请求,得到第一状态码和第二状态码。
在本步骤中,初始网站的URL网页是步骤B1提取得到的初始网站的URL网页。异构冗余架构网站的URL网页是步骤B1提取得到的异构冗余架构网站的URL网页。
在本步骤中,为了描述方便,将初始网站的URL网页响应于requests请求,反馈的状态码,称为第一状态码。将异构冗余架构网站的URL网页响应于requests请求,反馈的状态码,称为第二状态码。
需要说明的是,在实际中,初始网站的URL网页可能是多个URL网页,异构冗余架构网站的URL网页可能是多个URL网页,在本步骤中,无论是初始网站还是异构冗余架构网站,分别向每个URL网页发送requests请求,得到每个URL网页反馈的状态码。
C2、依据第一状态码,检验第二状态码。
在本步骤中,以第一状态码作为检验第二状态码的参考,具体的,如果第二状态码为“200”,则表示第二状态码正常,进一步表明异构冗余架构网站的网页静态资源信息中的URL状态正常。如果第二状态码不是“200”,则表示第二状态码不正常,进一步表明异构冗余架构网站的网页静态资源信息中的URL状态不正常。
进一步的,对于第二状态码中不正常的状态码,可以利用集合记录不正常的第二状态码,同时,还可以对记录的不正常的第二状态码进行计数。
具体的,对初始网站和异构冗余架构网站的静态资源目录结构进行对比的过程,可以包括以下步骤D1~步骤D3:
D1、通过正则表达式的方式,分别爬取初始网站和异构冗余架构网站的静态资源URL,得到初始网站的静态资源URL和异构冗余架构网站的静态资源URL。
在本实施例中,静态资源URL指Javascript、html、css、jpg(或其他图片格式)等网页资源的url信息。
在本步骤中,通过正则表达式的方式,具体爬取初始网站和异构冗余架构网站的静态资源URL的实现方式为现有技术,这里不再赘述。
D2、分别访问初始网站和异构冗余架构网站的静态资源URL指示的URL地址,得到初始网站的静态资源和异构冗余架构网站的静态资源。
在本步骤中,作为示例,初始网站的静态资源和异构冗余架构网站的静态资源可以包括css和bmp等,当然,在实际中,静态资源还可以包括其他内容,本实施例不对静态资源的具体内容作限定。
具体对静态资源URL指示的URL地址的访问的具体实现方式为现有技术,这里不再赘述。
D3、通过difflib模块,比较初始网站和异构冗余架构网站的静态资源的目录结构是否一致。
在本步骤中,difflib模块的功能为比较静态资源的目录结构。
具体的,本步骤中,difflib模块对初始网站和异构冗余架构网站的静态资源的目录结构,进行比较的具体实现方式为现有技术,这里不在赘述。
在本实施例中,还可以对步骤D3得到的目录结构一致的静态资源的内容进行比较。具体的,依据difflib模块的对比结果,对目录结构一致的静态资源的内容进行比较,具体的比较实现过程为现有技术,这里不再赘述。
进一步的,在本实施例中,还可以利用filecmp模块生成对目录结构一致的静态资源的内容的比较的结果,具体生成的实现过称为现有技术,这里不再赘述。
在本实施例中,针对网页静态资源信息、网页静态资源信息中的URL网页、状态码、静态资源目录结构,以及目录结构一致的静态资源的内容方面,对初始网站和异构冗余架构网站进行了对比,因为对比的方面比较全面,因此,本实施例使得对异构冗余架构网站的测试更加完整。
在本申请实施例中,对异构冗余架构网站的测试包括了模拟检测和静态资源的各种对比,即通过静态资源和模拟检测相结合的方式,实现对异构冗余架构网站的功能完整性进行测试,使得本实施例对异构冗余架构网站测试的功能更完整。
图2为本申请实施例提供的一种异构冗余架构网站的测试装置,可以包括:第一调用模块201、第二调用模块202和模拟模块203;
其中,第一调用模块201,用于调用configparser读取预先提取的初始网站的网页资源信息;初始网站为异构冗余架构网站异构冗余前的网站;网页资源信息为初始网站的网页模板中通用功能的网页资源信息;
第二调用模块202,用于调用selenium中的find-element-by-css-selector方法,使得find-element-by-css-selector方法依据网站资源信息,对异构冗余架构网站进行资源定位,得到异构冗余架构网站中是否存在网站资源信息的结果;
模拟模块203,用于通过selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试异构冗余架构网站中的网页是否对用户提供正常功能。
可选的,该装置还包括完整性测试模块,用于对初始网站与异构冗余架构网站,分别从网页静态资源信息、网页静态资源信息中的URL网页、状态码、静态资源目录结构、目录结构一致的静态资源的内容进行对比;
状态码是向URL网页发送request请求,URL网页反馈的状态码;
静态资源目录结构是通过访问网站静态资源URL,得到的静态资源的目录结构。
可选的,完整性测试模块,用于对初始网站的网页静态资源信息与异构冗余架构网站的网页静态资源信息进行对比,包括:
完整性测试模块,具体用于调用requests模块,使得requests模块分别爬取初始网站和异构冗余架构网站的网页静态资源信息;
分别以消息队列的形式,保存初始网站的网页静态资源信息和异构冗余架构网站的网页静态资源信息;
对初始网站的网页静态资源信息与异构冗余架构网站的网页静态资源信息,逐行对比是否相同。
可选的,完整性测试模块,用于对初始网站的状态码与异构冗余架构网站的状态码进行对比,包括:
完整性测试模块,具体用于利用正则表达式,分别对初始网站和异构冗余架构网站的网页静态资源信息中的URL网页进行提取,得到初始网站的URL网页和异构冗余架构网站的URL网页;分别向初始网站的URL网页和异构冗余架构网站的URL网页发送requests请求,得到第一状态码和第二状态码;第一状态码为初始网站的URL网页反馈的状态码;第二状态码为异构冗余架构网站的URL网页反馈的状态码;依据第一状态码,检验第二状态码。
可选的,完整性测试模块,用于分别对初始网站的静态资源目录结构与异构冗余架构网站的静态资源目录结构进行对比,包括:
完整性测试模块,具体用于通过正则表达式的方式,分别爬取初始网站和异构冗余架构网站的静态资源URL,得到初始网站的静态资源URL和异构冗余架构网站的静态资源URL;分别访问初始网站和异构冗余架构网站的静态资源URL指示的URL地址,得到初始网站的静态资源和异构冗余架构网站的静态资源;通过difflib模块,比较初始网站的静态资源的目录结构和异构冗余架构网站的静态资源的目录结构是否一致。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种异构冗余架构网站的测试方法,其特征在于,包括:
在异构冗余架构网站的部署过程中,调用configparser读取预先提取的初始网站的网页资源信息;所述初始网站为所述异构冗余架构网站异构冗余前的网站;所述网页资源信息为所述初始网站的网页模板中通用功能的网页资源信息;
调用selenium中的find-element-by-css-selector方法,使得所述find-element-by-css-selector方法依据网站资源信息,对所述异构冗余架构网站进行资源定位,得到所述异构冗余架构网站中是否存在所述网站资源信息的结果;
通过所述selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试所述异构冗余架构网站中的网页是否对用户提供正常功能;
其中,在模拟网页操作的结果为find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法运行过程中所使用到的函数正常运行不报错,表示异构冗余架构网站中的网页能对用户提供正常功能,在模拟网页操作的结果为find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法运行过程中所使用到的函数报错:无法定位网页元素,表示异构冗余架构网站中的网页不能对用户提供正常功能;
其中,测试方法还包括:对所述初始网站与所述异构冗余架构网站,分别从网页静态资源信息、所述网页静态资源信息中的URL网页、状态码、静态资源目录结构、目录结构一致的静态资源的内容进行对比;
所述状态码是向所述URL网页发送request请求,所述URL网页反馈的状态码;
所述静态资源目录结构是通过访问网站静态资源URL,得到的静态资源的目录结构。
2.根据权利要求1所述的方法,其特征在于,对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息进行对比,包括:
调用requests模块,使得所述requests模块分别爬取所述初始网站和所述异构冗余架构网站的网页静态资源信息;
分别以消息队列的形式,保存所述初始网站的网页静态资源信息和所述异构冗余架构网站的网页静态资源信息;
对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息,逐行对比是否相同。
3.根据权利要求2所述的方法,其特征在于,对所述初始网站的状态码与所述异构冗余架构网站的状态码进行对比,包括:
利用正则表达式,分别对所述初始网站和所述异构冗余架构网站的网页静态资源信息中的URL网页进行提取,得到所述初始网站的URL网页和所述异构冗余架构网站的URL网页;
分别向所述初始网站的URL网页和所述异构冗余架构网站的URL网页发送requests请求,得到第一状态码和第二状态码;所述第一状态码为所述初始网站的URL网页反馈的状态码;所述第二状态码为所述异构冗余架构网站的URL网页反馈的状态码;
依据所述第一状态码,检验所述第二状态码。
4.根据权利要求1所述的方法,其特征在于,所述分别对所述初始网站的静态资源目录结构与所述异构冗余架构网站的静态资源目录结构进行对比,包括:
通过正则表达式的方式,分别爬取所述初始网站和所述异构冗余架构网站的静态资源URL,得到所述初始网站的静态资源URL和所述异构冗余架构网站的静态资源URL;
分别访问所述初始网站和所述异构冗余架构网站的静态资源URL指示的URL地址,得到所述初始网站的静态资源和所述异构冗余架构网站的静态资源;
通过difflib模块,比较所述初始网站的静态资源的目录结构和所述异构冗余架构网站的静态资源的目录结构是否一致。
5.一种异构冗余架构网站的测试装置,其特征在于,包括:
第一调用模块,用于在异构冗余架构网站的部署过程中,调用configparser读取预先提取的初始网站的网页资源信息;所述初始网站为所述异构冗余架构网站异构冗余前的网站;所述网页资源信息为所述初始网站的网页模板中通用功能的网页资源信息;
第二调用模块,用于调用selenium中的find-element-by-css-selector方法,使得所述find-element-by-css-selector方法依据网站资源信息,对所述异构冗余架构网站进行资源定位,得到所述异构冗余架构网站中是否存在所述网站资源信息的结果;
模拟模块,用于通过所述selenium中的find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法模拟网页操作,测试所述异构冗余架构网站中的网页是否对用户提供正常功能;
其中,在模拟网页操作的结果为find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法运行过程中所使用到的函数正常运行不报错,表示异构冗余架构网站中的网页能对用户提供正常功能,在模拟网页操作的结果为find-element-by-css-selector(css-name).click()方法和find-element-by-css-selector(css-name).send-keys(textinfo)方法运行过程中所使用到的函数报错:无法定位网页元素,表示异构冗余架构网站中的网页不能对用户提供正常功能;
其中,还包括完整性测试模块,用于对所述初始网站与所述异构冗余架构网站,分别从网页静态资源信息、所述网页静态资源信息中的URL网页、状态码、静态资源目录结构、目录结构一致的静态资源的内容进行对比;
所述状态码是向所述URL网页发送request请求,所述URL网页反馈的状态码;
所述静态资源目录结构是通过访问网站静态资源URL,得到的静态资源的目录结构。
6.根据权利要求5所述的装置,其特征在于,所述完整性测试模块,用于对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息进行对比,包括:
所述完整性测试模块,具体用于调用requests模块,使得所述requests模块分别爬取所述初始网站和所述异构冗余架构网站的网页静态资源信息;
分别以消息队列的形式,保存所述初始网站的网页静态资源信息和所述异构冗余架构网站的网页静态资源信息;
对所述初始网站的网页静态资源信息与所述异构冗余架构网站的网页静态资源信息,逐行对比是否相同。
7.根据权利要求6所述的装置,其特征在于,所述完整性测试模块,用于对所述初始网站的状态码与所述异构冗余架构网站的状态码进行对比,包括:
所述完整性测试模块,具体用于利用正则表达式,分别对所述初始网站和所述异构冗余架构网站的网页静态资源信息中的URL网页进行提取,得到所述初始网站的URL网页和所述异构冗余架构网站的URL网页;
分别向所述初始网站的URL网页和所述异构冗余架构网站的URL网页发送requests请求,得到第一状态码和第二状态码;所述第一状态码为所述初始网站的URL网页反馈的状态码;所述第二状态码为所述异构冗余架构网站的URL网页反馈的状态码;
依据所述第一状态码,检验所述第二状态码。
8.根据权利要求5所述的装置,其特征在于,所述完整性测试模块,用于分别对所述初始网站的静态资源目录结构与所述异构冗余架构网站的静态资源目录结构进行对比,包括:
所述完整性测试模块,具体用于通过正则表达式的方式,分别爬取所述初始网站和所述异构冗余架构网站的静态资源URL,得到所述初始网站的静态资源URL和所述异构冗余架构网站的静态资源URL;
分别访问所述初始网站和所述异构冗余架构网站的静态资源URL指示的URL地址,得到所述初始网站的静态资源和所述异构冗余架构网站的静态资源;
通过difflib模块,比较所述初始网站的静态资源的目录结构和所述异构冗余架构网站的静态资源的目录结构是否一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010107417.3A CN111368231B (zh) | 2020-02-21 | 2020-02-21 | 一种异构冗余架构网站的测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010107417.3A CN111368231B (zh) | 2020-02-21 | 2020-02-21 | 一种异构冗余架构网站的测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111368231A CN111368231A (zh) | 2020-07-03 |
CN111368231B true CN111368231B (zh) | 2023-12-15 |
Family
ID=71210061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010107417.3A Active CN111368231B (zh) | 2020-02-21 | 2020-02-21 | 一种异构冗余架构网站的测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111368231B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113448835B (zh) * | 2020-09-25 | 2023-10-20 | 北京新氧科技有限公司 | 一种静态资源测试方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101465768A (zh) * | 2009-01-12 | 2009-06-24 | 上海及第熊软件科技有限公司 | 一种实现网站容灾容错运行的方法与系统 |
CN107026812A (zh) * | 2015-06-25 | 2017-08-08 | 中兴通讯股份有限公司 | 一种页面处理方法和多媒体终端 |
CN107808002A (zh) * | 2017-11-13 | 2018-03-16 | 山东省农村信用社联合社 | 一种门户网站内容动态布局及发布的方法 |
CN108881154A (zh) * | 2018-04-20 | 2018-11-23 | 北京海泰方圆科技股份有限公司 | 网页被篡改检测方法、装置及系统 |
CN109379389A (zh) * | 2018-12-21 | 2019-02-22 | 中国人民解放军战略支援部队信息工程大学 | 网络攻击防御方法及相关设备 |
-
2020
- 2020-02-21 CN CN202010107417.3A patent/CN111368231B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101465768A (zh) * | 2009-01-12 | 2009-06-24 | 上海及第熊软件科技有限公司 | 一种实现网站容灾容错运行的方法与系统 |
CN107026812A (zh) * | 2015-06-25 | 2017-08-08 | 中兴通讯股份有限公司 | 一种页面处理方法和多媒体终端 |
CN107808002A (zh) * | 2017-11-13 | 2018-03-16 | 山东省农村信用社联合社 | 一种门户网站内容动态布局及发布的方法 |
CN108881154A (zh) * | 2018-04-20 | 2018-11-23 | 北京海泰方圆科技股份有限公司 | 网页被篡改检测方法、装置及系统 |
CN109379389A (zh) * | 2018-12-21 | 2019-02-22 | 中国人民解放军战略支援部队信息工程大学 | 网络攻击防御方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111368231A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11704384B2 (en) | Secure document sharing | |
US10642904B2 (en) | Infrastructure enabling intelligent execution and crawling of a web application | |
US8898796B2 (en) | Managing network data | |
US20200213362A1 (en) | Policy approval layer | |
RU2637477C1 (ru) | Система и способ обнаружения фишинговых веб-страниц | |
US8949990B1 (en) | Script-based XSS vulnerability detection | |
US10740411B2 (en) | Determining repeat website users via browser uniqueness tracking | |
US9864671B1 (en) | Systems and methods of live experimentation on content provided by a web site | |
CN104717185B (zh) | 短统一资源定位符的展示响应方法、装置、服务器和系统 | |
US8621613B1 (en) | Detecting malware in content items | |
CN102663052B (zh) | 一种提供搜索引擎搜索结果的方法及装置 | |
US20190222587A1 (en) | System and method for detection of attacks in a computer network using deception elements | |
CN103647678A (zh) | 一种网站漏洞在线验证方法及装置 | |
CN112596857B (zh) | 一种SaaS多租户数据隔离的方法、装置、设备及介质 | |
CN111539775A (zh) | 应用程序的管理方法及设备 | |
CN113469866A (zh) | 数据处理方法、装置和服务器 | |
CN110266792A (zh) | 地址转换方法、装置、设备与计算机可读存储介质 | |
CN111368231B (zh) | 一种异构冗余架构网站的测试方法及装置 | |
US9348977B1 (en) | Detecting malware in content items | |
JP2004529421A (ja) | インターネット・フォームを処理する方法および装置 | |
KR101111956B1 (ko) | 컴퓨팅 장치의 모니터링 내용 제공 시스템 및 방법 | |
CN111835706B (zh) | 浏览器恶意扩展的检验方法、装置及计算机设备 | |
CN112257100A (zh) | 敏感数据保护效果的检测方法、装置及存储介质 | |
CN113420234B (zh) | 一种微博数据采集方法与系统 | |
CN116599877B (zh) | 一种基于爬虫技术的IPv6的链接测试方法 |
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 |