页面元素的检测方法、装置、存储介质及处理器与流程

文档序号:18822387发布日期:2019-10-09 00:59阅读:125来源:国知局
页面元素的检测方法、装置、存储介质及处理器与流程

本发明涉及计算机领域,具体而言,涉及一种页面元素的检测方法、装置、存储介质及处理器。



背景技术:

网站accessibility(可达性),表示该网站具有能够给可达性出现问题的用户,可以正常访问该网站的能力。其中,具有可达性障碍的用户包括视力、听力和身体等方面的原因用户,无鼠标用户,也包含了正常用户在某些时候发生暂时性障碍的情况,如怀抱婴儿的用户。

具有可达性障碍的用户,由于视力、听力和身体等方面的原因,对网站的阅读和操作十分困难。这就需要网站本身提供accessibility特性和服务帮助用户更好地访问。

目前,在国外已经有了一些成熟的accessibility网站规范标准,例如section508,mas等规范网站,使具有可达性障碍的用户可以无障碍的使用符合这些标准的网站。其中,一些比较知名的网站都已通过了这些标准,例如microsoft,google等。

但是,目前还没有对网站accessibility特性进行检测的自动化工具,而依靠人工检测,则存在成本高且效率低下的问题,特别是对于有成千上万网页的大型网站,如何准确高效地判断一个网站是否符合accessibility特性标准变得十分困难。

针对上述页面的可达性检测效率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种页面元素的检测方法、装置、存储介质及处理器,以至少解决页面的可达性检测效率低的技术问题。

根据本发明实施例的一个方面,提供了一种页面元素的检测方法,包括:获取待检测页面的至少一个可交互元素,所述可交互元素为所述待检测页面中支持人机交互的页面元素;检测所述可交互元素是否符合预定检测条件;输出检测结果。

进一步地,在获取待检测页面的至少一个可交互元素之前,所述方法还包括:解析所述待检测页面,得到所述待检测页面的全部所述页面元素;提取所述页面元素的属性信息;判断所述属性信息是否符合预定属性条件;将所述属性信息符合预定属性条件的页面元素作为所述可交互元素。

进一步地,所述预定检测条件有多个;在检测所述可交互元素是否符合预定检测条件之后,所述方法还包括:根据多个所述预定检测条件检测所述可交互元素,得到多个检测结果;汇总所述多个检测结果,生成检测报告。

进一步地,检测所述可交互元素是否符合预定检测条件包括以下至少之一:检测至少一个所述可交互元素的编号序列是否符合预定顺序;检测所述可交互元素的指定属性值是否符合预定属性条件。

根据本发明实施例的另一方面,还提供了一种页面元素的检测装置,包括:获取单元,用于获取待检测页面的至少一个可交互元素,所述可交互元素为所述待检测页面中支持人机交互的页面元素;检测单元,用于检测所述可交互元素是否符合预定检测条件;输出单元,用于输出检测结果。

进一步地,所述装置还包括:解析单元,用于在获取待检测页面的至少一个可交互元素之前,解析所述待检测页面,得到所述待检测页面的全部所述页面元素;提取单元,用于提取所述页面元素的属性信息;判断单元,用于判断所述属性信息是否符合预定属性条件;确定单元,用于将所述属性信息符合预定属性条件的页面元素作为所述可交互元素。

进一步地,所述预定检测条件有多个;所述装置还包括:结果获取单元,用于在检测所述可交互元素是否符合预定检测条件之后,根据多个所述预定检测条件检测所述可交互元素,得到多个检测结果;汇总模块,用于汇总所述多个检测结果,生成检测报告。

进一步地,所述检测单元包括以下至少之一:第一检测模块,用于检测至少一个所述可交互元素的编号序列是否符合预定顺序;第二检测模块,用于检测所述可交互元素的指定属性值是否符合预定属性条件。

根据本发明的另一方面,本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的页面元素的检测方法。

根据本发明的另一方面,本发明实施例还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的页面元素的检测方法。

在本发明实施例中,在待检测页面的多个页面元素中获取该待检测页面的至少一个支持人机交互的可交互元素,再检测获取的至少一个可交互元素是否符合预定检测条件,完成对待检测页面可交互元素的检测,并输出检测结果,达到了对页面的可交互元素检测的目的,进而可以根据对可交互元素的检测结果来确定页面accessibility(可达性),从而实现了对页面可达性检测的技术效果,进而解决了页面的可达性检测效率低的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种页面元素的检测方法的流程图;

图2是根据本发明实施例的一种网站accessibility特性检测工具的示意图;

图3是根据本发明实施例的一种页面元素的检测装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先,在对本发明实施例进行描述的过程中出现的部分名词或术语适用于如下解释:

accessibility特性:网站的可达性和用户友好性。

url:统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址,即一个网站或者一个网页的internet地址。

case:网页中需要进行检测的测试点。

selenium:一个用于web应用程序测试的工具,selenium测试直接运行在浏览器中。

根据本发明实施例,提供了一种页面元素的检测方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

需要说明的是,本发明所提供的页面元素的检测方法,主要应用于对页面accessibility(可达性)的检测。

页面的accessibility(可达性),主要应用于对页面的无障碍辅助服务(accessibilityservice)。对网页的无障碍辅助服务,可以按照特定的规则或功能对页面的可交互元素进行设置来实现。

例如,可以在页面中多个可交互元素设置切换顺序,或者页面中的可交换元素是否处于指定位置,或者在页面的可交互元素上设置语音播报功能等。

因此,对页面的accessibility(可达性)检测可以通过对页面的可交互元素进行检测来实现。

图1是根据本发明实施例的一种页面元素的检测方法的流程图,如图1所示,该方法包括如下步骤:

步骤s102,获取待检测页面的至少一个可交互元素,可交互元素为待检测页面中支持人机交互的页面元素;

步骤s104,检测可交互元素是否符合预定检测条件;

步骤s106,输出检测结果。

通过上述步骤,在待检测页面的多个页面元素中获取该待检测页面的至少一个支持人机交互的可交互元素,再检测获取的至少一个可交互元素是否符合预定检测条件,完成对待检测页面可交互元素的检测,并输出检测结果,达到了对待检测页面的可交互元素检测的目的,进而可以根据对可交互元素的检测结果来确定待检测页面accessibility(可达性),从而实现了对页面可达性检测的技术效果,进而解决了页面的可达性检测效率低的技术问题。

在步骤s102提供的方案中,通过对待检测页面进行解析,可以得到待检测页面的全部页面元素,然后在这些页面元素中提取检测条件(即预定检测条件)所对应的可交互元素。

可选地,可交互元素可以根据检测条件(即预定检测条件)确定,根据预定检测条件可以从解析的页面元素中选取预定检测条件所要检测的可交互元素。

例如,在预定检测条件为第一预定检测条件的情况下,则第一预定检测条件可以对a类型可交互元素进行检测,进而可以获取待检测页面的a类型的可交互元素。

需要说明的是,上述选取过程可以在待检测页面的页面元素中选取,还可以在待检测页面的可交互元素中选取。

在步骤s104提供的方案中,预定检测条件可以根据检测项目确定。

例如,在需要检测待检测页面的可交互元素是否具有语音播报功能的情况下,可以设置该语音播报功能所对应的检测条件(即预定检测条件)。

可选地,预定检测条件可以由检测人员设置,检测人员可在预设的多个检测项目中,选取需要进行检测的检测项目,进而可以根据该检测项目选取待检测页面所对应的可交互元素。

可选地,预定检测条件可以从预定检测条件中选取。

可选地,可以从预定指令库中调取预定检测条件所对应的检测指令,进而根据该检测指令完成对可交互元素的检测。

在步骤s106提供的方案中,在完成对待检测页面的可交互元素的检测后,可以生成检测结果,便于检测人员根据检测结果对待检测页面的可交互元素进行调整。

可选地,检测结果中包括可交互元素的唯一标识,检测人员可以根据可交互元素的唯一标识确定不符合预定检测条件的可交互元素,实现对不符合条件的可交互元素的修改。

可选地,检测结果中包括可交互元素的不合格项目,例如,在可交互元素不具有语音播报功能的情况下,可以在检测结果中显示该可交互元素的语音播报功能异常。

可选地,网站(website)是指在因特网上根据一定的规则,使用html(标准通用标记语言下的一个应用)等工具制作的用于展示特定内容相关网页的集合。对网站的可达性检测,可以根据网站url(统一资源定位符)获取该网站的全部待检测页面,进而再对各待检测页面进行页面元素的检测,从而可以实现对网站的可达性检测。

可选地,在对网站进行可达性检测的情况下,可以同时对网站的多个页面进行并行检测,从而可以加快检测效率。

作为一种可选的实施例,在获取待检测页面的至少一个可交互元素之前,方法还包括:解析待检测页面,得到待检测页面的全部页面元素;提取页面元素的属性信息;判断属性信息是否符合预定属性条件;将属性信息符合预定属性条件的页面元素作为可交互元素。

采用本发明上述实施例,可以对待检测页面进行解析,获得待检测页面的全部页面元素,再依次提取页面元素的属性信息,可以根据提取的属性信息是否符合预定属性条件来确定该页面元素是否属于可交互元素,然后可以将属性信息符合预定属性条件的页面元素作为可交互元素。

可选地,预定属性条件可以根据待检测的项目确定,例如,对于具有切换网页功能的可交互元素,可以将预定属性条件设置为具有链接的页面元素,进而可以在全部页面元素中选取属性信息中包括链接的页面元素作为可交互元素。

作为一种可选的实施例,预定检测条件有多个;在检测可交互元素是否符合预定检测条件之后,方法还包括:根据多个预定检测条件检测可交互元素,得到多个检测结果;汇总多个检测结果,生成检测报告。

采用本发明上述实施例,在对页面进行可达性检测过程中,可以对页面进行多项可达性检测,也即,可以设置多个预定检测条件,再分别使用多个预定检测条件分别对页面的可交互元素进行检测,得到多个预定检测条件所对应的多个检测结果,并将多个检测结果进行汇总,生产检测报告。

作为一种可选的实施例,可以通过第一预定检测条件对页面的a类型的可交互元素进行检测,得到第一检测结果;可以通过第二预定检测条件对页面的b类型的可交互元素进行检测,得到第二检测结果,进而汇总第一检测结果和第二检测结果,可以生成页面的检测报告。

可选地,多个预定检测条件,可以同时对页面的可交互元素进行并行检测。

作为一种可选的实施例,检测可交互元素是否符合预定检测条件包括以下至少之一:检测至少一个可交互元素的编号序列是否符合预定顺序;检测可交互元素的指定属性值是否符合预定属性条件。

采用本发明上述实施例,检测可交互元素是否符合预定检测条件可以包括检测页面的至少一个可交互元素的排列顺序进行检测,还可以对可交互元素的指定属性值进行检测。

需要说明的是,检测可交互元素是否符合预定检测条件包括但不限于上述检测条件,检测的具体内容可以根据实际使用需求设置,其检测条件可以根据检测需求进行扩展。

可选地,可以按照待检测页面的浏览顺序获取多个可交互元素的标号,进而确定多个可交互元素所组成的标号顺序,再确定待检测页面的可交互元素的编号序列是否符合预定顺序,从而确定待检测页面是否符合预定检测条件。

可选地,可交互元素的编号序列可以表示可交互元素的切换顺序,通过判断可交互元素的编号序列来确定该可交互元素的切换顺序是否符合预定检测条件。

可选地,可以按照待检测页面中,可交互元素的指定属性值,再通过判断可交互元素的指定属性值是否符合预定属性条件来确定待检测页面是否符合预定检测条件。

可选地,在需要检测待检测页面的可交互元素是否具有语音播报功能的情况下,可以检测可交互元素的用于指示语音播报功能的指定属性值是否符合预定属性条件,从而可以确定该可交互元素是否符合预定检测条件。

本发明还提供了一种优选实施例,该优选实施例提供了一种网站accessibility特性检测工具。

本发明所提供的测试工具,获取网站链接(url),然后再由测试人员自行选择需要测试的测试点case。

图2是根据本发明实施例的一种网站accessibility特性检测工具的示意图,如图2所示,

本发明所提供的检测工具,可以根据url使用selenium技术解析该网页内容并获得所有的页面元素,然后按照所选择的测试点case对页面元素(可交互元素)进行测试,最终将测试的结果存于数据库中,并发出测试报告。

本发明所提供的检测工具,检测逻辑体现在测试点case里面,只需要编写相应的测试点case测试逻辑则可对网站进行多样性测试。

本发明所提供的检测工具,通过测试点case可以对待检测网站的可交互元素tab功能次序和可交互元素语音功能进行检测。

需要说明的是,可交互元素可以是所述待检测页面中支持人机交互的页面元素。

可选地,可交互元素tab次序检测功能检测,包括:对页面可交互元素的切换顺序进行检测。

可选地,可交互元素tab是指访问页面可交互元素的时候,连续按tab键可以依次切换的页面元素,通过按下指定次数的tab键,可以将页面选择的光标切换至指定的页面元素上。为了实现该功能,则需要页面元素的tab编号具有良好的次序。如果页面元素的tab次序杂乱,就会导造成视力障碍人士的阅读不便,无法理解网页内容,也无法确定选择的页面元素。该检测原理是:检测页面元素的实际顺序和tab次序是否一致。

可选地,交互元素语音功能是指:在打开读屏开关的情况下,当焦点移动到网页上一个可交互元素时,可以语音报出该元素相关信息(例如焦点移动到“打开”按钮上时,则会报出类似“按钮,打开”的语音),从而方便视力障碍人士阅读和操作网页。当该元素某些信息缺失时,屏幕阅读器无法提供完整信息来帮助实力障碍人士决定操作。该检测原理是:检测页面元素是否含有合法的可读属性值(例如text、type、alt等)。

本发明所提供的测试工具,可以利用计算机资源来检测网站的accessibility特性,在效率方面有巨大的优势,而且本发明支持分布式部署,所以适用于网页数量巨大的网站。

本发明所提供的测试工具,可以避免人工检测所出现的人为疏忽和失误,使测试结果完整准确。

本发明所提供的测试工具,支持测试点case持扩展,可以随时按照不同的标准进行添加和修改测试case。

本发明所提供的测试工具,测试的结果也支持不同方式的呈现和统计,十分有利于网站内容的规范化和质量的提高,使网站更人性化和更具体验度。

本发明所提供的测试工具,可以使用计算机资源解析网页并根据页面元素去检测网站是否符合accessibility特性标准。

根据本发明的又一个实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,程序运行时执行上述任一项的页面元素的检测方法。

根据本发明的又一个实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述任一项的页面元素的检测方法。

根据本发明实施例,还提供了一种页面元素的检测装置实施例,需要说明的是,该页面元素的检测装置可以用于执行本发明实施例中的页面元素的检测方法,本发明实施例中的页面元素的检测方法可以在该页面元素的检测装置中执行。

图3是根据本发明实施例的一种页面元素的检测装置的示意图,如图3所示,该装置可以包括:获取单元31,用于获取待检测页面的至少一个可交互元素,可交互元素为待检测页面中支持人机交互的页面元素;检测单元33,用于检测可交互元素是否符合预定检测条件;输出单元35,用于输出检测结果。

需要说明的是,该实施例中的获取单元31可以用于执行本申请实施例中的步骤s102,该实施例中的检测单元33可以用于执行本申请实施例中的步骤s104,该实施例中的输出单元35可以用于执行本申请实施例中的步骤s106。上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。

在本发明实施例中,在待检测页面的多个页面元素中获取该待检测页面的至少一个支持人机交互的可交互元素,再检测获取的至少一个可交互元素是否符合预定检测条件,完成对待检测页面可交互元素的检测,并输出检测结果,达到了对页面的可交互元素检测的目的,进而可以根据对可交互元素的检测结果来确定页面accessibility(可达性),从而实现了对页面可达性检测的技术效果,进而解决了页面的可达性检测效率低的技术问题。

作为一种可选的实施例,装置还包括:解析单元,用于在获取待检测页面的至少一个可交互元素之前,解析待检测页面,得到待检测页面的全部页面元素;提取单元,用于提取页面元素的属性信息;判断单元,用于判断属性信息是否符合预定属性条件;确定单元,用于将属性信息符合预定属性条件的页面元素作为可交互元素。作为一种可选的实施例,检测单元包括但不限于以下至少之一:第一检测模块,用于检测至少一个可交互元素的编号序列是否符合预定顺序;第二检测模块,用于检测可交互元素的指定属性值是否符合预定属性条件。

作为一种可选的实施例,预定检测条件有多个;装置还包括:结果获取单元,用于在检测可交互元素是否符合预定检测条件之后,根据多个预定检测条件检测可交互元素,得到多个检测结果;汇总模块,用于汇总多个检测结果,生成检测报告。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1