网站适配问题检测方法、装置及存储介质与流程

文档序号:29252439发布日期:2022-03-16 10:09阅读:94来源:国知局
网站适配问题检测方法、装置及存储介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种网站适配问题检测方法、装置及存储介质。


背景技术:

2.随着浏览器产品的迅速发展,各种浏览器应运而生。不同种类的浏览器,其页面加载标准参差不齐。甚至是同一种浏览器,由于不同时期进行了版本更新,新版本的浏览器与旧版本的浏览器,其页面加载标准也会存在差异。这就会出现网站适用于某一种浏览器而不适用于另一种浏览器,或者适用于旧版本浏览器而不适用于新版本浏览器的问题。
3.为解决上述问题,目前,主要采取人工干预方式。所谓人工干预方式,就是发现网站在某一浏览器中出现不适配的问题时,人工通过查看该网站的源代码,进而从该网站的源代码中寻找出问题的根源。从而对该网站的源代码进行调整,使得该网站能够适用于上述浏览器。
4.然而,通过人工查看网源代码,进而从网站源代码中寻找出网站不适用于浏览器的根源,这种定位问题根源的方式耗时较长,从而降低了网站适配问题的检测效率。


技术实现要素:

5.本技术实施例的目的是提供一种网站适配问题检测方法、装置及存储介质,以提高网站适配问题的检测效率。
6.为解决上述技术问题,本技术实施例提供如下技术方案:
7.本技术第一方面提供一种网站适配问题检测方法,所述方法应用于浏览器中,所述方法包括:获取所述浏览器在页面中的加载内容;分析所述加载内容是否符合预设规则,所述预设规则为所述浏览器的页面中无法加载相应内容的情况集合;若是,则获取所述加载内容对应的网页代码片段,并将所述网页代码片段记录为问题代码。
8.本技术第二方面提供一种网站适配问题检测装置,所述装置应用于浏览器中,所述装置包括:采集模块,用于获取所述浏览器在页面中的加载内容;分析模块,用于分析所述加载内容是否符合预设规则,所述预设规则为所述浏览器的页面中无法加载相应内容的情况集合;截取模块,用于若是,则获取所述加载内容对应的网页代码片段,并将所述网页代码片段记录为问题代码。
9.本技术第三方面提供一种计算机可读存储介质,包括:存储的程序;其中,在所述程序运行时控制所述存储介质所在设备执行第一方面中的方法。
10.相较于现有技术,本技术第一方面提供的网站适配问题检测方法,通过获取浏览器在页面中的加载内容,进而分析加载内容是否符合预设规则,预设规则为浏览器的页面中无法加载相应内容的情况集合,如果分析出加载内容符合预设规则,说明该加载内容无法在浏览器的页面中正常显示,那么就获取加载内容对应的网页代码片段,并将网页代码片段记录为问题代码。这样,无需维护人员再查看网站的源代码,通过浏览器,能够更加快
速地查找出不适配的加载内容对应的网页代码片段,进而提高网站适配问题的检测效率。并且,对于新手,其只要能够使得浏览器运行,无需其它任何操作,就能够获得存在不适配问题的网页代码片段,大大提高了网站适配问题检测的便捷性和普适性。以及,即便是一些用户没有发现或者反馈的不适配问题,通过浏览器在实际中对网站加载在浏览器中加载的内容进行检测分析,打破了发现问题再解决问题这一传统的网站不适配问题的检测方式,能够提前发现用户还没有发现或者反馈的不适配问题,并针对这些不适配问题尽早解决,能够提升用户对于网站的使用体验。
11.本技术第二方面提供的网站适配问题检测装置、第三方面提供的计算机可读存储介质,与第一方面提供的网站适配问题检测方法具有相同或相似的有益效果。
附图说明
12.通过参考附图阅读下文的详细描述,本技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本技术的若干实施方式,相同或对应的标号表示相同或对应的部分,其中:
13.图1为本技术实施例中网站适配问题检测方法的流程示意图一;
14.图2为本技术实施例中浏览器插件生成过程的流程示意图;
15.图3为本技术实施例中加载内容分析过程的流程示意图;
16.图4为本技术实施例中网站调试过程的流程示意图;
17.图5为本技术实施例中网站适配问题检测方法的流程示意图二;
18.图6为本技术实施例中网站适配问题检测装置的结构示意图一;
19.图7为本技术实施例中网站适配问题检测装置的结构示意图二。
具体实施方式
20.下面将参照附图更详细地描述本技术的示例性实施方式。虽然附图中显示了本技术的示例性实施方式,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
21.需要注意的是,除非另有说明,本技术使用的技术术语或者科学术语应当为本技术所属领域技术人员所理解的通常意义。
22.目前,当出现网站不适配于浏览器的问题时,主要是通过人工查看网站的源代码,从网站的源代码中查找网站不适配于浏览器的原因。从而对网站的源代码进行修改,使得网站能够适用于浏览器。例如:当浏览器中加载某一网站的网页时,由于该网站与浏览器不适配,该网站中某些图片无法正在加载到浏览器的页面中显示。此时,需要人工查看该网站的源代码,从源代码中找出不显示的图片的相关代码,从而对这些相关代码进行修改,使得该网站中的这些图片最终能够在浏览器中显示。
23.上述的网站适配问题的检测方法,由于需要通过人工对网站的源代码进行查看,定位不适配问题根源的时间较长,并且对检测人员的知识储备和经验都有所要求,以及只能够在用户发现问题后才能够针对用户反馈的问题进行定位和解决,无法提前发现用户还没有发现的不适配问题。
24.有鉴于此,本技术实施例提供了一种网站适配问题检测方法,通过将该方法应用于浏览器中,进而通过浏览器获取其页面中加载的内容,进而将该加载的内容与预先设定的该浏览器的页面中无法加载的相应内容的情况集合(即预设规则)进行对比分析,如果对比分析发现与预设规则一致,说明当前获取的浏览器的页面中加载的内容无法在浏览器的页面中正常显示,那么,就将该加载的内容对应的网页代码片段进行记录和反馈,以告知相应网站的维护人员进行修改,使得后续该加载的内容能够在上述浏览器的页面中正常显示。这样,无需人员再查看网站的源代码,通过浏览器,能够更加快速地查找出不适配的加载内容对应的网页代码片段,进而提高网站适配问题的检测效率。
25.并且,通过浏览器对其页面中加载的内容进行检测分析,进而在发现问题时,获取加载内容对应的网页源代码,这样,无需人员再查看网站的源代码,能够降低对检测人员的知识储备和经验的要求。甚至是新手,其只要能够使得浏览器运行,无需其它任何操作,就能够获得存在不适配问题的网页代码片段,大大提高了网站适配问题检测的便捷性和普适性。
26.以及,通过浏览器对其页面中加载的内容进行检测分析,进而在发现问题时,获取加载内容对应的网页源代码,即便是一些用户没有发现或者反馈的不适配问题,通过浏览器在实际中对网站加载在浏览器中加载的内容进行检测分析,打破了发现问题再解决问题这一传统的网站不适配问题的检测方式,能够提前发现用户还没有发现或者反馈的不适配问题,并针对这些不适配问题尽早解决,能够提升用户对于网站的使用体验。
27.在实际应用中,本技术实施例提供的网站适配问题检测方法,可以应用于各种类型或者各种版本的浏览器中。对于本技术实施例提供的网站适配问题检测方法适用的浏览器的具体类型和版本,此处不做限定。
28.此外,对于进行适配问题检测的对象,即网站,可以是公网中的各种网站,例如:淘宝、百度等。也可以是内网中的各种网站,例如:企业内部使用的管理网站等。对于本技术实施例中网站的具体类型,此处不做限定。
29.接下来,针对本技术实施例提供的网站适配问题检测方法进行详细说明。
30.图1为本技术实施例中网站适配问题检测方法的流程示意图一,参见图1所示,该方法可以包括:
31.s101:获取浏览器在页面中的加载内容。
32.为了检测网站在浏览器中是否适配,可以将网站加载到浏览器中运行,进而通过浏览器的页面中加载的内容判断该网站是否适配于该浏览器。
33.在具体实施过程中,可以通过浏览器获取其页面中加载的内容,即加载内容。具体的,浏览器可以通过其内置的监控函数和调用函数,获取浏览器在页面中的加载内容。当浏览器的页面中开始加载网站的内容时,监控函数监测到浏览器页面中开始加载网站内容了,进而控制调用函数获取浏览器当前在页面中加载的内容。当然,浏览器还可以通过其它方式获取其在页面中的加载内容。对于具体的获取方式,此处不做限定。
34.s102:分析加载内容是否符合预设规则;若是,则执行s103。
35.其中,预设规则为浏览器的页面中无法加载相应内容的情况集合。
36.在一款浏览器开发或升级完成后,该浏览器所支持加载的内容或者不支持加载的内容就已经确定。进而,可以将该浏览器所不支持加载的内容的属性或相关特征进行整合,
生成一个浏览器的页面中无法加载相应内容的情况集合,即预设规则。
37.这样,在获取到浏览器在页面中的加载内容后,就可以将获取的加载内容与预设规则进行对比分析,以确定获取的加载内容是否符合预设规则。
38.举例来说,假设在浏览器的页面中获取的加载内容为一张图片,该图片的格式为png。而该浏览器中仅支持加载jpg格式的图片,那么预设内容就是图片格式为非jpg。当浏览器的页面中开始加载上述图片时,浏览器就能够获取到该图片,进而获得该图片的格式为png。进而将该png格式的图片与预设规则中图片格式为非jpg这一条规则进行对比分析,发现该png格式的图片符合图片格式为非jpg这一条规则。因此,分析结果就认为浏览器的页面中加载的图片符合预设规则,进而浏览器的页面中无法正常加载该图片,该图片在浏览器的页面中可能就显示为一个带有错误或无法显示标识的图片。获取的浏览器的页面中加载的内容不仅仅只有图片,还可以有文字、链接等。对于浏览器的页面中加载的具体内容,此处不做限定。相应的,对于预设规则中的具体内容,需要根据每个浏览器所能够支持加载或者不支持加载的情况而定,此处不做具体限定。
39.s103:获取加载内容对应的网页代码片段,并将网页代码片段记录为问题代码。
40.在分析出浏览器的页面中加载的内容不符合预设规则后,说明在浏览器的页面中加载该内容后,该内容无法正常显示。而为了使维护人员能够快速地找到问题根源,进而针对网站进行该问题的修复,本技术实施例中就自动获取加载内容对应的网页代码片段,进而将获取的该网页代码片段作为问题代码进行记录。这样,维护人员在看到记录后,就能够直接清楚地获知网站的代码究竟是哪里出现了问题,进行可以直接进行维护,不仅提高了网站适配检测的效率,同时还提高了网站维护的效率。
41.由于网站中各部分的内容与其对应的代码片段都是一一对应的,因此,在确定网站中的某一部分内容后,通过对应关系,就能够直接找到该内容对应的网页代码片段,并进行记录。而对于获取加载内容网页代码片段以及记录的具体方式,此处不做限定。
42.在对存在问题的加载内容对应的网页代码片段进行记录后,还可以通过预设的映射关系,给出对应的问题原因以及修改意见。并且,该可以进一步地对记录进行整理,生成检测报告,以供维护等人员进行查看和筛选。
43.由上述内容可知,本技术实施例提供的网站适配问题检测方法,通过获取浏览器在页面中的加载内容,进而分析加载内容是否符合预设规则,预设规则为浏览器的页面中无法加载相应内容的情况集合,如果分析出加载内容符合预设规则,说明该加载内容无法在浏览器的页面中正常显示,那么就获取加载内容对应的网页代码片段,并将网页代码片段记录为问题代码。这样,无需维护人员再查看网站的源代码,通过浏览器,能够更加快速地查找出不适配的加载内容对应的网页代码片段,进而提高网站适配问题的检测效率。并且,对于新手,其只要能够使得浏览器运行,无需其它任何操作,就能够获得存在不适配问题的网页代码片段,大大提高了网站适配问题检测的便捷性和普适性。以及,即便是一些用户没有发现或者反馈的不适配问题,通过浏览器在实际中对网站加载在浏览器中加载的内容进行检测分析,打破了发现问题再解决问题这一传统的网站不适配问题的检测方式,能够提前发现用户还没有发现或者反馈的不适配问题,并针对这些不适配问题尽早解决,能够提升用户对于网站的使用体验。
44.进一步地,为了实现各种浏览器都能够获取到其页面中的加载内容,可以设置一
个浏览器插件,进而将该浏览器插件注入到浏览器中,这样。对于任何类型或者任何版本的浏览器,只要其中加入了上述浏览器插件,通过浏览器插件,就能够使得各种浏览器都能够获取到其页面中的加载内容,进而实现网站适配问题的检测。
45.图2为本技术实施例中浏览器插件生成过程的流程示意图,参见图2所示,在步骤s101之前,还可以包括:
46.s201:获取浏览器所支持的编程语言。
47.一般来说,开发浏览器时所使用的编程语言为c语言,而加载到浏览器中的网站所使用的是java script(简称js)语言,以及浏览器所支持的插件或者扩展语言也是js语言。为了确保生成的浏览器插件能够适用于相应的浏览器,所以,在生成浏览器插件时,需要预先获知目标浏览器所支持的编程语言,进而采用该编程语言生成浏览器插件,能够使得生成的浏览器插件与目标浏览器更加契合,进而提升网站适配检测的效果。
48.s202:采用浏览器所支持的编程语言生成浏览器插件。
49.其中,浏览器插件用于对浏览器中加载的网站进行适配检测。
50.在获取到浏览器所支持的编程语言后,就可以使用该编程语言继续编写相应的浏览器插件了。在这里,需要根据浏览器插件具体需要实现的功能编写生成相应的浏览器插件。当需要对浏览器中加载的网站进行适配检测时,在编写浏览器插件时,就需要集成各种检测网站适配问题的规则及方法,以便生成能够检测浏览器中加载的网站是否适配的浏览器插件。而对于浏览器插件的具体编写方式,可以采用各种成熟的编写方式进行,此处不做具体限定。
51.s203:将浏览器插件加载至浏览器中。
52.在生成了具有网站适配检测功能的浏览器插件后,只要将该浏览器插件安装于相应的浏览器中,该浏览器运行并加载网站后,浏览器插件即可检测该加载的网站是否适配于当前浏览器。
53.而对于将浏览器插件安装于浏览器中的时机,可以在用户选择安装浏览器插件后,将浏览器插件安装于浏览器中,也可以是自动将浏览器插件安装于浏览器中。对于这种自动安装的方式,是需要在一定的前提条件下才能够自动安装的。这是为了避免强行为用户安装其不需要的插件,提升用户的使用体验。
54.具体来说,步骤s203可以包括:
55.步骤a1:判断浏览器是否安装于测试终端内,并且测试终端是否连网成功;若两者均为是,则执行步骤a2;若两者至少有一个为否,则执行步骤a3。
56.步骤a2:自动将浏览器插件加载至浏览器中。
57.步骤a3:生成用于提示是否安装浏览器插件的提示信息。
58.也就是说,当浏览器安装于测试终端内,并且测试终端连网成功时,说明当前正在通过测试终端对浏览器进行测试,并且,测试终端与网络连接成功,还说明测试终端的浏览器中可以加载公网或者内网中的网站。此时,自动将浏览器插件加载至所述浏览器中,正好能够实现在该浏览器中对网站的适配问题检测,并且此时还不会影响应用正常对网站的使用。在不干扰用户使用网站各项功能的情况下,能够尽早地对网站的适配问题进行检测,从而尽早发现问题尽早解决,能够提高网站的使用体验。
59.而当浏览器未安装于测试终端内,和/或测试终端未连网成功时,说明当前可能并
没有对浏览器进行测试,即便当前正在对浏览器进行测试,由于测试终端没有连网,浏览器的页面中也无法加载网站中的内容。此时,可以生成并向用户发出是否安装浏览器插件的提示信息,进而根据用户的选择结果,确定是否将浏览器插件安装于浏览器中,能够避免强行在浏览器中安装插件,进而避免影响用户对于浏览器或者网站的使用体验。
60.由于在步骤s101之前执行了步骤s201-s203,因此,步骤s101相应的就可以变为:通过浏览器插件获取浏览器在页面中的加载内容。
61.通过在浏览器中安装浏览器插件,进而通过浏览器插件获取浏览器的页面中的加载内容,这样,无论是何种浏览器,只要其安装有该浏览器插件,就能够获取其页面中的加载内容,进而实现网站适配问题的自动检测。使得各种浏览器都能够实现网站适配问题的自动检测,提高了浏览器适配问题检测的普适性。
62.一般来说,浏览器中的插件或者加载的网站都是使用js语言编写的。因此,本技术实施例中的浏览器插件一般也采用js语言。为了使得仅支持非js语言的浏览器也能够使用上述的浏览器插件进行网站适配问题检测,可以将采用js语言生成的浏览器插件仍安装于仅支持非js语言的浏览器中,进而通过浏览器插件生成具有其它编程语言的请求,向浏览器对应的服务器获取浏览器的页面中的加载内容,进而实现网站适配问题的检测。
63.具体来说,在执行改变后的步骤s101之前,还可以包括:
64.步骤b1:判断浏览器是否支持js语言;若是,则执行改变后的步骤s101;若否,则执行步骤b2。
65.步骤b2:通过浏览器插件向浏览器所属的服务器发送获取加载内容的请求,并从浏览器所属的服务器的响应信息中获取浏览器在页面中的加载内容。
66.也就是说,当浏览器插件与浏览器所支持的编程语言都是js语言时,可以直接通过浏览器插件获取浏览器的页面中加载的内容。而当浏览器插件使用js语言编写,而浏览器并不支持js语言时,可以使浏览器插件向浏览器所属的服务器发送请求,该请求可以是基于非js语言生成,并且用来请求获取浏览器的页面中的加载内容。这样,浏览器所属的服务器在接收到请求,并验证通过后,可以将浏览器的页面中的加载内容作为相应信息发送给该浏览器所在的客户端,进而浏览器插件就能够获取到浏览器的页面中的加载内容了。
67.当然,除了采用上述步骤s201-s203中生成的浏览器插件获取浏览器在页面中的加载内容,还可以将相应的适配问题检测代码嵌入到浏览器相应的代码中,无需安装任何插件,只需浏览器运行并加载网站,也能够对加载的网站进行适配问题检测。对于获取浏览器在页面中的加载内容的具体方式,此处不做限定。
68.由上述内容可知,通过生成与浏览器所使用的编程语言相同的浏览器插件,并通过生成的浏览器插件获取浏览器的页面中的加载内容,进而实现对网站适配问题的检测,能够使各种浏览器都实现对网站适配问题的检测,进而提升了网站适配问题检测的普适性。以及,在浏览器插件与浏览器所使用的编程语言不同的情况下,通过浏览器插件向浏览器所属的服务器发送获取加载内容的请求,进而从浏览器所属的服务器的响应信息中获取浏览器在页面中的加载内容,进一步扩大了检测网站适配问题所适用的浏览器的范围。以及,在浏览器安装于测试终端内,并且测试终端连网成功的情况下,再自动将浏览器插件加载至浏览器中,在不干扰用户使用网站各项功能的情况下,能够尽早地对网站的适配问题进行检测,从而尽早发现问题尽早解决,能够提高网站的使用体验。
69.进一步地,为了更加准确地确定网站是否适配于浏览器,可以在获取到浏览器在页面中的加载内容后,将该加载内容背后的每一种属性或者特征都进行分析,即,将预设规则进行细化。这样,能够更加全面地判断加载内容是否会在浏览器的页面中正常加载,进而提高网站适配问题检测的准确性。
70.图3为本技术实施例中加载内容分析过程的流程示意图,参见图3所示,上述步骤s102可以包括:
71.步骤s301:判断加载内容是否为资源节点;若是,则执行步骤s302;若否,则执行步骤s303。
72.步骤s302:检测加载内容对应的资源内容是否无法正常加载。
73.当加载内容属于资源节点时,说明该节点对应显示的内容需要从其它地方调用,即加载内容是需要从其它地方调用的。此时,检测加载内容对应的资源内容是否无法正常加载,就能够知晓加载内容是否能够正常在浏览器的页面中显示。
74.在实际应用中,可以使用层叠样式表(cascading style sheets,css)检查器对资源节点对应的内容进行检测。而对于css检查器的具体类型,此处不做限定。
75.具体来说,可以采用但不限于以下两种方式检测加载内容对应的资源内容是否无法正常加载。
76.方式c1:检测加载内容对应的资源内容中是否包含关键字。
77.其中,关键字用于指示资源内容在加载中存在错误。
78.当发现加载内容对应的资源内容中存在一些预先设定的关键字时,例如:错误、无法显示、error等关键字,说明调用来的资源内容有误。此时,就可以确定加载内容对应的资源内容在浏览器的页面中无法正常加载。
79.方式c2:检测是否未接收到加载内容对应的服务器的反馈信息。
80.当没有接收到加载内容对应的服务器的反馈信息时,说明浏览器需要加载相应的内容,而服务器并没有将该内容反馈至浏览器。此时,浏览器中是没有加载内容对应的资源内容的,进而更无法对加载内容进行显示,这样也可以确定加载内容对应的资源内容在浏览器的页面中无法正常加载。
81.而当接收到加载内容对应的服务器的反馈信息时,此时还需要判断反馈信息中是否存在上述的关键字,如果不存在上述的关键字,说明反馈信息是正确的,那么加载内容是可以正常在浏览器的页面中显示的。而如果存在上述关键字,说明反馈信息在获取的过程中发生了错误,那么加载内容是无法正常在浏览器的页面中显示的。
82.步骤s303:分析加载内容对应的节点是否符合检测规则。
83.其中,检测规则中预设有各种非正常节点对应的信息。
84.当加载内容不属于资源节点时,说明该节点对应显示的内容可以直接从浏览器中加载。此时,可以分析加载内容对应的节点是否符合检测规则,而检测规则中预设有各种非正常节点对应的信息。这样,就可以确定非资源节点中的内容是否能够在浏览器的页面中正常显示。
85.在实际应用中,可以使用超文本标记语言(hyper text markup language,html)检查器或者java script检查器对非资源节点对应的内容进行检测。而对于html检查器或者java script检查器的具体类型,此处不做限定。
86.具体来说,可以采用但不限于以下五种方式检测非资源节点中的加载内容是否能够在浏览器的页面中正常显示。
87.方式d1:分析加载内容对应的类型是否在不可适配范围内。
88.在检测规则中,可以将所有不适配于浏览器的内容的类型进行列举。在获取到浏览器的页面中的加载内容后,可以将该加载内容的类型与检测规则中设置的类型进行对比,若发现加载内容的类型与检测规则中设置的某一个类型对比成功,则确定该加载内容无法正常在浏览器的页面中显示。若发现加载内容的类型与检测规则中设置的所有类型均为对比成功,则确定该加载内容能够正常在浏览器的页面中显示。
89.举例来说,假设加载内容为图片,检测规则中设置有png、tiff等。经过分析,该加载图片的类型为png,正好与检测规则中的png一样。那么,就可以认为该图片无法正常在浏览器的页面中加载显示。这是因为:检测规则中的图片类型都是已经确定的无法在浏览器的页面中加载显示的图片类型。
90.在实际应用中,加载内容的类型可以是网页对象中的任何一种类型,这需要根据加载内容的具体内容而定。对于上述类型的具体内容,此处不做限定。
91.方式d2:分析加载内容对应的属性是否不存在。
92.在检测规则中,可以设置内容属性不存在这一规则。在获取到浏览器的页面中的加载内容后,就可以基于检测规则判断该加载内容的属性是否存在。若发现加载内容的属性不存在,则确定该加载内容无法正常在浏览器的页面中显示。若发现加载内容的属性存在,则确定该加载内容能够正常在浏览器的页面中显示。
93.在实际应用中,加载内容的属性可以是网页对象中的任何一种属性。对于属性的具体内容,此处不做限定。
94.方式d3:分析加载内容对应的方法是否不存在。
95.在检测规则中,可以设置内容方法不存在这一规则。在获取到浏览器的页面中的加载内容后,就可以基于检测规则判断该加载内容的方法是否存在。若发现加载内容的方法不存在,则确定该加载内容无法正常在浏览器的页面中显示。若发现加载内容的方法存在,则确定该加载内容能够正常在浏览器的页面中显示。
96.在实际应用中,加载内容的方法可以是网页对象中的任何一种方法。对于方法的具体内容,此处不做限定。
97.方式d4:调用加载内容对应的方法或修改加载内容对应的值后,分析调用或修改后的结果是否不符合预期。
98.在检测规则中,可以设置一些实施调用方法或者修改对象值后不符合预期的各种情况。在获取到浏览器的页面中的加载内容后,就可以调用加载内容对应的方法或修改加载内容对应的值,进而将调用后的结果或者修改值后的结果与检测规则中设置的不符合预期的各种情况进行对比。若发现上述结果与上述各种情况中的某一种一致,则确定该加载内容无法正常在浏览器的页面中显示。若发现上述结果与上述各种情况都不一致,则确定该加载内容能够正常在浏览器的页面中显示。
99.在实际应用中,可以将加载内容对应的值修改为任何一个合理的数值。对于修改的值的具体大小,此处不做限定。
100.方式d5:使用全局方法对加载内容进行操作后,分析操作后的结果是否不符合预
期。
101.在检测规则中,可以设置一些使用全局方法对网页对象进行操作后不符合预期的各种情况。在获取到浏览器的页面中的加载内容后,就可以使用全局方法对加载内容进行操作,进而将操作后的结果与检测规则中设置的不符合预期的各种情况进行对比。若发现上述结果与上述各种情况中的某一种一致,则确定该加载内容无法正常在浏览器的页面中显示。若发现上述结果与上述各种情况都不一致,则确定该加载内容能够正常在浏览器的页面中显示。
102.在实际应用中,使用的全局方法可以是网页对象中的任何一种全局方法。对于全局方法的具体内容,此处不做限定。
103.由上述内容可知,通过分析加载内容是否属于资源节点,进而在加载内容属于资源节点的情况下,检测加载内容对应的资源内容是否无法正常加载,以及在加载内容不属于资源节点的情况下,分析加载内容对应的节点是否符合检测规则,能够针对不同类型节点中的加载内容采用不同的方式进行分析,进而提高网站适配问题检测的准确性。以及,在资源节点中,划分出两种不同的方式确定加载内容对应的资源内容是否出现问题,以及在非资源节点中,细化出多条判断规则,进而确定加载内容是否能够在浏览器的页面中正常加载,这些都能够更加全面地判断加载内容是否会在浏览器的页面中正常显示,进而提高网站适配检测的精准程度。
104.进一步地,对于已经上线的网站,在发现适配问题后,为了不影响用户对于网站中各功能模块的使用,可以先不针对网站的服务器中的源代码进行修改,而是先针对网站在浏览器中的代码进行修改,待确定网站中的内容都能够在浏览器的页面中正常加载显示时,再将与上述修改的内容对应的网站服务器中的那部分源代码进行相似修改。这样,能够缩短网站服务器的维护时间,进而提升用户对于网站的使用体验。
105.若按照上述方式对网站进行调试,上述步骤s103就需要适应性的变为:获取加载内容在浏览器中的网页代码片段。
106.图4为本技术实施例中网站调试过程的流程示意图,参见图4所示,在步骤s103之后,还可以包括:
107.s401:对加载内容在浏览器中的网页代码片段进行调试。
108.在获取到浏览器加载的网站内容中存在问题的网页代码片段后,可以现在浏览器中针对该问题网页代码片段进行调试,即对该问题网页代码片段进行修改,使其对应的内容能够在浏览器的页面中显示。而具体的调试方法,可以采用现有的各种成熟的调试方案。对于具体的调试方法,此处不做限定。
109.s402:判断调试后的加载内容是否能够在浏览器的页面中正常加载;若是,则执行步骤s403;若否,则返回步骤s401。
110.s403:将调试的内容发送至加载内容对应的网站服务器。
111.也就是说,当通过调试使得加载内容在浏览器的页面中能够正常加载时,说明采用该调试方案,能够使得加载内容在浏览器的页面中正常加载并显示。那么,将调试的内容发送至加载内容对应的网站服务器,在网站服务器中,就可以按照调试的内容直接修改相应位置处的源代码。这样,能够节省人工根据适配问题查找网站服务器中源代码对应片段所耗费的时间,以及节省修改网站服务器中源代码并进行验证的时间,进而提高网站适配
问题的解决效率。而当通过调试使得加载内容仍无法在浏览器的页面中正常加载时,就重新对加载内容在浏览器中对应的网页代码片段进行调试,直到通过调试使得加载内容仍无法在浏览器的页面中正常加载为止,再继续执行上述步骤s403。
112.由上述内容可知,在确定加载内容无法正常在浏览器的页面中加载并显示时,通过将加载内容在浏览器中的网页代码片段进行调试,并将调试后的网页代码片段发送至网站的服务器。相对于针对网站服务器中的源代码直接进行调试以及修改,或者通过网站的测试环境进行源代码修改(有些老旧网站的测试环境甚至已经不存在了),通过网站在浏览器中的代码进行调试和修改,能够节省人工根据适配问题查找网站服务器中源代码对应片段所耗费的时间,以及节省修改网站服务器中源代码并进行验证的时间,进而提高网站适配问题的解决效率。
113.最后,针对本技术实施例提供的网站适配问题检测方法再次进行一个完整的说明。
114.图5为本技术实施例中网站适配问题检测方法的流程示意图二,参见图5所示,该方法可以包括:
115.s501:启动检测。
116.s502:在浏览器中重载页面,并注入js浏览器扩展。
117.s503:遍历页面中的节点树。
118.s504:判断当前节点是否为统一资源定位(uniform resource locator,url)节点;若是,则执行s505;若否,则执行s506。
119.s505:检测资源内容是否存在问题;若是,则执行s507;若否,则继续执行s503。
120.s506:检测节点是否存在问题;若是,则执行s507;若否,则继续执行s503。
121.s507:生成检测结果。
122.基于同一发明构思,作为对上述方法的实现,本技术实施例还提供了一种网站适配问题检测装置,该装置应用于浏览器中。图6为本技术实施例中网站适配问题检测装置的结构示意图一,参见图6所示,该装置可以包括:
123.采集模块601,用于获取所述浏览器在页面中的加载内容。
124.分析模块602,用于分析所述加载内容是否符合预设规则,所述预设规则为所述浏览器的页面中无法加载相应内容的情况集合。
125.截取模块603,用于若是,则获取所述加载内容对应的网页代码片段,并将所述网页代码片段记录为问题代码。
126.进一步地,作为对图6所示装置的细化和扩展,本技术实施例还提供了一种网站适配问题检测装置。图7为本技术实施例中网站适配问题检测装置的结构示意图二,参见图7所示,该装置可以包括:
127.生成模块701,包括:
128.确定单元7011,用于获取所述浏览器所支持的编程语言。
129.编辑单元7012,用于采用所述编程语言生成浏览器插件,所述浏览器插件用于对所述浏览器中加载的网站进行适配检测。
130.加载单元7013,用于将所述浏览器插件加载至所述浏览器中。
131.所述加载单元7013,具体用于当所述浏览器安装于测试终端内,并且所述测试终
端连网成功时,自动将所述浏览器插件加载至所述浏览器中。
132.当所述浏览器插件采用js语言生成时,判断模块702,包括:
133.第一判断单元7021,用于判断所述浏览器是否支持js语言。
134.策略单元7022,用于若否,则通过所述浏览器插件向所述浏览器所属的服务器发送获取所述加载内容的请求,并从所述浏览器所属的服务器的响应信息中获取所述浏览器在页面中的加载内容。
135.采集模块703,具体用于若是,则通过所述浏览器插件获取所述浏览器在页面中的加载内容。
136.分析模块704,包括:
137.第二判断单元7041,用于判断所述加载内容是否为资源节点。
138.第一执行单元7042,用于若是,则检测所述加载内容对应的资源内容是否无法正常加载。
139.所述第一执行单元7042,具体用于:检测所述加载内容对应的资源内容中是否包含关键字,所述关键字用于指示资源内容在加载中存在错误;或者,检测是否未接收到所述加载内容对应的服务器的反馈信息。
140.第二执行单元7043,用于若否,则分析所述加载内容对应的节点是否符合检测规则,所述检测规则中预设有各种非正常节点对应的信息。
141.所述第二执行单元7043,具体用于:分析所述加载内容对应的类型是否在不可适配范围内;或者,分析所述加载内容对应的属性是否不存在;或者,分析所述加载内容对应的装置是否不存在;或者,调用所述加载内容对应的装置或修改所述加载内容对应的值后,分析调用或修改后的结果是否不符合预期;或者,使用全局装置对所述加载内容进行操作后,分析操作后的结果是否不符合预期。
142.截取模块705,用于若是,则获取所述加载内容在所述浏览器中的网页代码片段,并将所述网页代码片段记录为问题代码。
143.调试模块706,包括:
144.调试单元7061,用于对所述加载内容在所述浏览器中的网页代码片段进行调试。
145.发送单元7062,用于当通过调试使得所述加载内容在所述浏览器的页面中能够正常加载时,将调试的内容发送至所述加载内容对应的网站服务器。
146.这里需要指出的是,以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
147.基于同一发明构思,本技术实施例还提供了一种计算机可读存储介质,该存储介质可以包括:存储的程序;其中,在程序运行时控制存储介质所在设备执行上述一个或多个实施例中的方法。
148.这里需要指出的是,以上存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
149.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵
盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1