CN112540925A - 新特性兼容性检测***及方法、电子设备及可读存储介质 - Google Patents
新特性兼容性检测***及方法、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN112540925A CN112540925A CN202011488582.4A CN202011488582A CN112540925A CN 112540925 A CN112540925 A CN 112540925A CN 202011488582 A CN202011488582 A CN 202011488582A CN 112540925 A CN112540925 A CN 112540925A
- Authority
- CN
- China
- Prior art keywords
- browser
- detected
- configuration group
- result
- compatibility
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 95
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012360 testing method Methods 0.000 claims abstract description 95
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (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
本发明实施例提供一种新特性兼容性检测***及方法、电子设备及可读存储介质,包括:数据库内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据;文件配置模块用于基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;兼容性检测模块用于接收并基于所述待检测新特性在所述数据库中进行检索并进行比对,基于检索结果和比对结果确定兼容性检测结果;单元测试模块用于接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果。本发明实施例可以减少后续测试人员的工作,节约企业成本,也能减少开发人员新特性使用时人为查询的时间。
Description
技术领域
本发明涉及浏览器的兼容性检测领域,特别涉及一种新特性兼容性检测***及方法、电子设备及可读存储介质。
背景技术
随着前端技术的不断发展,Javascript的标准ECMAScript也在日益更新中,新增特性在浏览器的兼容性方面得到了极大的考验,如何在开发过程中保证使用的新特性可以兼容到目标浏览器,如何在使用CSS新特性时兼容目标浏览器,是亟待解决的问题。
现有技术是采用将新特性编译成浏览器可以识别的版本来解决问题,例如,针对ES6(ECMAScript 6)的新特性,目前使用的方案是利用语法解析转换工具,将ES6的语法编译成大部分浏览器可以识别的ES5(ECMAScript 5)的语法,通用的转化方案有babel,traceur, jsx,typescript,es6-shim,采用比较常用的babel举例,该方案虽然可以转义ES6,但并不是所有的新特性都可以成功的转译成浏览器识别的语法。并且该方法也只有在编译的时候才能进行转换,过程中也没有提示,导致并不知道哪些是可以成功进行转译的,哪些是不能的进行转译的,这样的一个过程对于用户来说就相当于是黑盒,不知道内部发生了什么,也无法收到此过程的反馈。因此,这类在编译的时候进行新特性的转换以适配于各种浏览器的方案的弊端在于,不小心用了不能转译的新特性,又逃过了编译工具的转换,那么就会导致页面错误。
而在编码过程中,新特性(JavaScript或者CSS的新特性)兼容性的处理,大部分都是采用人工在caniuse官网上查询,测试阶段用各个不同的浏览器重复性测试,这种人为的查询测试行为,可能存在一些主观因素,或者测试不全的问题,费时费力,也是属于重复性工作,例如,现在有N个用户使用同一个新特性,假设大家都不知道这个新特性的兼容性,那么N个用户要查N遍,并且测试的工作量也是N倍,重复性工作,浪费人力。从长远来看,这种在编码过程中兼容性处理方式,对于企业存在成本的浪费,同时也制肘着前端技术的发展。
发明内容
为了解决现有技术中只能在编译的时候将新特性语法转译成浏览器可以识别的语法,人工检测新特性兼容性费时费力、无法直观得到检测结果的问题,本发明实施例提供一种可以在代码编写的同时实时检测新特性对于浏览器的兼容性,能够节约查询新特性兼容性和后续测试成本的新特性兼容性检测***及方法、电子设备及可读存储介质。
本发明实施例提供一种新特性兼容性检测***,包括数据库、文件配置模块、兼容性检测模块、单元测试模块:
所述数据库内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容;
所述文件配置模块,用于基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
所述兼容性检测模块,用于接收并基于所述待检测新特性在所述数据库中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
所述单元测试模块,用于接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果。
优选的是,所述的新特性兼容性检测***,其中,还包括提示告警模块,所述提示告警模块用于接收并基于所述不兼容配置组或单元测试结果,输出相应的提示信息和/或告警信息。
优选的是,所述的新特性兼容性检测***,其中,所述将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组具体包括:
当检索结果为未检索到与所述待检测新特性兼容的目标浏览器时,则将所述待检测新特性与待检测浏览器返回不兼容配置组,并将所述不兼容配置组反馈给所述提示告警模块;
当检索结果为检索到与所述待检测新特性兼容的目标浏览器时,将检索到的目标浏览器与所述待检测浏览器进行比对,若比对结果为所述待检测浏览器与检索到的目标浏览器不同时,则将所述待检测新特性与待检测浏览器返回不兼容配置组,并将所述不兼容配置组反馈给所述提示告警模块;
当比对结果为所述待检测浏览器与检索到的目标浏览器相同时,则将所述待检测新特性与待检测浏览器返回兼容配置组。
优选的是,所述的新特性兼容性检测***,其中,所述根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果具体包括:
当所述兼容配置组通过单元测试时,则输出所述兼容配置组单元测试通过的结果;
当所述兼容配置组未通过单元测试时,则输出所述兼容配置组单元测试未通过的结果,并将所述不兼容配置组反馈给所述提示告警模块;
将输出的不兼容配置组返回所述数据库,以实现对所述数据库的更新。
本发明实施例提供一种新特性兼容性检测方法,包括:
基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
接收并基于所述待检测新特性在数据库中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果;
其中,所述数据库内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
优选的是,所述的新特性兼容性检测方法,其中,还包括:
接收并基于所述不兼容配置组或单元测试结果,输出相应的提示信息和/或告警信息。
优选的是,所述的新特性兼容性检测方法,其中,所述将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组具体包括:
当检索结果为未检索到与所述待检测新特性兼容的目标浏览器时,则将所述待检测新特性与待检测浏览器返回不兼容配置组;
当检索结果为检索到与所述待检测新特性兼容的目标浏览器时,将检索到的目标浏览器与所述待检测浏览器进行比对,若比对结果为所述待检测浏览器与检索到的目标浏览器不同时,则将所述待检测新特性与待检测浏览器返回不兼容配置组;
当比对结果为所述待检测浏览器与检索到的目标浏览器相同时,则将所述待检测新特性与待检测浏览器返回兼容配置组。
优选的是,所述的新特性兼容性检测方法,其中,所述根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果具体包括:
当所述兼容配置组通过单元测试时,则输出所述兼容配置组单元测试通过的结果;
当所述兼容配置组未通过单元测试时,则输出所述兼容配置组单元测试未通过的结果;
将输出的不兼容配置组返回所述数据库,以实现对所述数据库的更新。
本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的新特性兼容性检测方法的步骤。
本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的新特性兼容性检测方法的步骤。
本发明实施例提供的新特性兼容性检测***中,数据库用于保存并更新新特性及其兼容性,作为兼容性检测的依据,在代码编写的时候实时监测使用的新特性的兼容性,让代码编写人员能够及时发现新特性是否可以兼容想要兼容的浏览器,直接在编码阶段就可以提前检测兼容性;内置单元测试,能够将兼容性的检测提前到编码前,而不用仅仅依赖于编译工具,也解决了编译工具对于某些新特性无法编译导致页面问题。将这些问题提前暴露于编码的时候,也可以提前处理预防浏览器兼容性带来的问题,可以减少后续测试人员的工作,节约企业成本,也能减少开发人员新特性使用时人为查询的时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的新特性兼容性检测***的示意图;
图2为本发明实施例提供的新特性兼容性检测方法的示意图;
图3为本发明实施例提供的电子设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的新特性兼容性检测***的示意图,如图1所示,该***包括:数据库10、文件配置模块20、兼容性检测模块30、单元测试模块40:
所述数据库10内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
数据库10中的初始数据例如可以从caniuse中获取,在后续的检测过程中,可以通过caniuse新数据或单元测试模块40的反馈结果,对数据库10进行新增或删除、迭代更新,以使得数据库10不断更新,更加精准,也可以给一部分更新权限给特定用户,这些特定用户可以提出数据库10更新申请,待审核通过可以更新数据库10,这些特定用户包括数据库10维护人员等。至少一个目标浏览器可以包含多个现有技术中的浏览器,可以是各个版本的浏览器,例如火狐、谷歌、百度等不同版本浏览器。
所述文件配置模块20,用于基于在编码之前输入编辑器中的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性。
例如用户要开始编一段代码,在编写这段代码之前,需要考虑这段代码需要兼容哪一些浏览器,此时,可以利用文件配置模块20预设一个配置文件,这个配置文件里面可以写入一些想要兼容的浏览器,写好之后就相当于配置好待检测浏览器,然后就开始编程,在编程过程中,基于在编码过程中输入的代码配制待检测新特性,根据本案的新特性兼容性检测***可以检测出待检测新特性是否兼容于编程之前预设的那些待检测浏览器。
用编辑器中的API,将兼容性软件进行包裹,形成该编辑器的自定义插件。以需要适配的浏览器及检测方式作为插件的配置,实现在编码过程中输入的时候实时检测输入的代码,或者为用户提供检测按钮,当出发检测按钮的时候,进行检测,提供主动或被动检测两种方式。
所述兼容性检测模块30,用于接收并基于所述待检测新特性在所述数据库10中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组。
优选的,还包括提示告警模块,所述提示告警模块用于接收并基于所述不兼容配置组或单元测试结果,输出相应的提示信息和/或告警信息。
待检测新特性在所述数据库10中进行检索,也就是,查询待检测新特性是否在数据库10中,若在,则进一步将检索结果与接收的待检测浏览器进行比对;也就是说,所述将检索结果和接收的待检测浏览器进行比对,基于检索结果(包含查询到的新特性以及兼容新特性的目标浏览器)和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组具体包括以下几种情况:
当检索结果为未检索到与所述待检测新特性兼容的目标浏览器时,则将所述待检测新特性与待检测浏览器返回不兼容配置组,并将所述不兼容配置组反馈给所述提示告警模块;
当检索结果为检索到与所述待检测新特性兼容的目标浏览器时,将检索到的目标浏览器与所述待检测浏览器进行比对,若比对结果为所述待检测浏览器与检索到的目标浏览器不同时,则将所述待检测新特性与待检测浏览器返回不兼容配置组,并将所述不兼容配置组反馈给所述提示告警模块;
当比对结果为所述待检测浏览器与检索到的目标浏览器相同时,则将所述待检测新特性与待检测浏览器返回兼容配置组。
提示告警模块根据兼容性检测模块30输出的不兼容配置组,输出相应的提示信息,此阶段的结果是表示检测出新特性与哪些浏览器不兼容,可以提示用户。
所述单元测试模块40,用于接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果。
所述根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果具体包括:
当所述兼容配置组通过单元测试时,则输出所述兼容配置组单元测试通过的结果;
当所述兼容配置组未通过单元测试时,则输出所述兼容配置组单元测试未通过的结果,并将所述不兼容配置组反馈给所述提示告警模块;
所述单元测试模块40还用于将输出的不兼容配置组返回所述数据库10,以实现对所述数据库10的更新。
提示告警模块根据单元测试模块40输出的不兼容配置组,输出相应的告警信息,此阶段的结果是表示兼容性检测模块30检测出新特性与哪些浏览器兼容的结果是错误的,可以告警修正***的兼容性检测模块30或者数据库10,并将不兼容配置组反馈给用户并根据结果实现对所述数据库10的部分删除更新。单元测试通过的兼容配置组无需反馈,可以节约编码过程中信息量,信息是实时反馈的,所以默认没有反馈就正常。
本案的新特性兼容性检测***中,数据库10用于保存并更新新特性及其兼容性,作为兼容性检测的依据,在代码编写的时候实时监测使用的新特性的兼容性,让代码编写人员能够及时发现新特性是否可以兼容想要兼容的浏览器,直接在编码阶段就可以提前检测兼容性,内置单元测试,可以减少后续测试人员的工作,节约企业成本,也能减少开发人员新特性使用时人为查询的时间。
通过本案可以实现编码人员在编码的时候实时的检测所使用的新特性的兼容性,并且给到提示,而不用再去网上查询新特性的可用性,也不需要测试人员在测试的时候找不同的电脑不同的浏览器,分版本去测试,可以大量减少测试开发人员的时间,为企业节约成本,并且能够将兼容性的检测提前到编码前,而不用仅仅依赖于编译工具,也解决了编译工具对于某些新特性无法编译导致页面问题。将这些问题提前暴露于编码的时候,也可以提前处理预防浏览器兼容性带来的问题。
图2为本发明实施例提供的新特性兼容性检测方法的示意图,如图2所示,该方法包括:
S1:基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
S2:接收并基于所述待检测新特性在数据库10中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
S3:接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果;
其中,所述数据库10内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
还包括:
接收并基于所述不兼容配置组或单元测试结果,输出相应的提示信息和/或告警信息。
所述将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组具体包括:
当检索结果为未检索到与所述待检测新特性兼容的目标浏览器时,则将所述待检测新特性与待检测浏览器返回不兼容配置组;
当检索结果为检索到与所述待检测新特性兼容的目标浏览器时,将检索到的目标浏览器与所述待检测浏览器进行比对,若比对结果为所述待检测浏览器与检索到的目标浏览器不同时,则将所述待检测新特性与待检测浏览器返回不兼容配置组;
当比对结果为所述待检测浏览器与检索到的目标浏览器相同时,则将所述待检测新特性与待检测浏览器返回兼容配置组。
所述根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果具体包括:
当所述兼容配置组通过单元测试时,则输出所述兼容配置组单元测试通过的结果;
当所述兼容配置组未通过单元测试时,则输出所述兼容配置组单元测试未通过的结果;
所述单元测试模块40还用于将输出的不兼容配置组返回所述数据库10,以实现对所述数据库10的更新。
本案实施例的新特性兼容性检测方法的工作原理与上述实施例的新特性兼容性检测***是相应的,此处不再一一赘述。
图3示例了一种电子设备的实体结构示意图,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器 310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行一种新特性兼容性检测方法,该方法包括:
利用新特性兼容性检测模型对目标图像进行新特性兼容性检测;
所述新特性兼容性检测模型的生成方法包括:
S1:基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
S2:接收并基于所述待检测新特性在数据库10中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
S3:接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果;
其中,所述数据库10内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行一种新特性兼容性检测方法,该方法包括:
利用新特性兼容性检测模型对目标图像进行新特性兼容性检测;
所述新特性兼容性检测模型的生成方法包括:
S1:基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
S2:接收并基于所述待检测新特性在数据库10中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
S3:接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果;
其中,所述数据库10内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行一种新特性兼容性检测方法,该方法包括:
利用新特性兼容性检测模型对目标图像进行新特性兼容性检测;
所述新特性兼容性检测模型的生成方法包括:
S1:基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
S2:接收并基于所述待检测新特性在数据库10中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
S3:接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果;
其中,所述数据库10内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种新特性兼容性检测***,其特征在于,包括数据库、文件配置模块、兼容性检测模块、单元测试模块:
所述数据库内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容;
所述文件配置模块,用于基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
所述兼容性检测模块,用于接收并基于所述待检测新特性在所述数据库中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
所述单元测试模块,用于接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果。
2.根据权利要求1所述的新特性兼容性检测***,其特征在于,还包括提示告警模块,所述提示告警模块用于接收并基于所述不兼容配置组或单元测试结果,输出相应的提示信息和/或告警信息。
3.根据权利要求2所述的新特性兼容性检测***,其特征在于,所述将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组具体包括:
当检索结果为未检索到与所述待检测新特性兼容的目标浏览器时,则将所述待检测新特性与待检测浏览器返回不兼容配置组,并将所述不兼容配置组反馈给所述提示告警模块;
当检索结果为检索到与所述待检测新特性兼容的目标浏览器时,将检索到的目标浏览器与所述待检测浏览器进行比对,若比对结果为所述待检测浏览器与检索到的目标浏览器不同时,则将所述待检测新特性与待检测浏览器返回不兼容配置组,并将所述不兼容配置组反馈给所述提示告警模块;
当比对结果为所述待检测浏览器与检索到的目标浏览器相同时,则将所述待检测新特性与待检测浏览器返回兼容配置组。
4.根据权利要求2所述的新特性兼容性检测***,其特征在于,所述根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果具体包括:
当所述兼容配置组通过单元测试时,则输出所述兼容配置组单元测试通过的结果;
当所述兼容配置组未通过单元测试时,则输出所述兼容配置组单元测试未通过的结果,并将所述不兼容配置组反馈给所述提示告警模块;
所述单元测试模块还用于将输出的不兼容配置组返回所述数据库,以实现对所述数据库的更新。
5.一种新特性兼容性检测方法,其特征在于,包括:
基于在编码之前输入的浏览器生成待检测浏览器、并基于在编码过程中输入的代码配制待检测新特性;
接收并基于所述待检测新特性在数据库中进行检索,并将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组;
接收并基于所述兼容配置组进行单元测试,并根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果;
其中,所述数据库内存储有至少一个目标新特性与至少一个目标浏览器兼容性的数据,且以至少一个新特性作为索引,至少一个目标新特性与至少一个目标浏览器的兼容性作为索引内容。
6.根据权利要求5所述的新特性兼容性检测方法,其特征在于,还包括:
接收并基于所述不兼容配置组或单元测试结果,输出相应的提示信息和/或告警信息。
7.根据权利要求6所述的新特性兼容性检测方法,其特征在于,所述将检索结果和接收的待检测浏览器进行比对,基于检索结果和比对结果确定兼容性检测结果,所述兼容性检测结果包括兼容配置组和不兼容配置组具体包括:
当检索结果为未检索到与所述待检测新特性兼容的目标浏览器时,则将所述待检测新特性与待检测浏览器返回不兼容配置组;
当检索结果为检索到与所述待检测新特性兼容的目标浏览器时,将检索到的目标浏览器与所述待检测浏览器进行比对,若比对结果为所述待检测浏览器与检索到的目标浏览器不同时,则将所述待检测新特性与待检测浏览器返回不兼容配置组;
当比对结果为所述待检测浏览器与检索到的目标浏览器相同时,则将所述待检测新特性与待检测浏览器返回兼容配置组。
8.根据权利要求6所述的新特性兼容性检测方法,其特征在于,所述根据所述兼容配置组是否通过单元测试选择性地输出相应的单元测试结果具体包括:
当所述兼容配置组通过单元测试时,则输出所述兼容配置组单元测试通过的结果;
当所述兼容配置组未通过单元测试时,则输出所述兼容配置组单元测试未通过的结果;
将输出的不兼容配置组返回所述数据库,以实现对所述数据库的更新。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求5-8所述的新特性兼容性检测方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求5-8所述的新特性兼容性检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011488582.4A CN112540925A (zh) | 2020-12-16 | 2020-12-16 | 新特性兼容性检测***及方法、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011488582.4A CN112540925A (zh) | 2020-12-16 | 2020-12-16 | 新特性兼容性检测***及方法、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112540925A true CN112540925A (zh) | 2021-03-23 |
Family
ID=75018228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011488582.4A Pending CN112540925A (zh) | 2020-12-16 | 2020-12-16 | 新特性兼容性检测***及方法、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112540925A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312055A (zh) * | 2021-05-28 | 2021-08-27 | 支付宝(杭州)信息技术有限公司 | 一种小程序投放方法、装置以及设备 |
CN113821213A (zh) * | 2021-09-29 | 2021-12-21 | 平安普惠企业管理有限公司 | 基于人工智能的前端代码检测及修复方法、装置及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731694A (zh) * | 2013-12-18 | 2015-06-24 | ***股份有限公司 | 浏览器兼容性测试分析方法及浏览器兼容性测试分析*** |
US20150301811A1 (en) * | 2013-01-23 | 2015-10-22 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for testing browser compatibility |
CN108549601A (zh) * | 2018-04-02 | 2018-09-18 | 郑州云海信息技术有限公司 | 一种多浏览器兼容性自动化测试方法 |
CN109634844A (zh) * | 2018-11-06 | 2019-04-16 | 北京奇虎科技有限公司 | Js代码测试方法、装置及电子设备 |
CN110750460A (zh) * | 2019-10-24 | 2020-02-04 | 深圳前海微众银行股份有限公司 | 浏览器兼容性的检测方法、装置、设备及可读存储介质 |
CN111159045A (zh) * | 2019-12-31 | 2020-05-15 | 中国银行股份有限公司 | 一种兼容性问题检测方法、装置及存储介质 |
-
2020
- 2020-12-16 CN CN202011488582.4A patent/CN112540925A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150301811A1 (en) * | 2013-01-23 | 2015-10-22 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for testing browser compatibility |
CN104731694A (zh) * | 2013-12-18 | 2015-06-24 | ***股份有限公司 | 浏览器兼容性测试分析方法及浏览器兼容性测试分析*** |
CN108549601A (zh) * | 2018-04-02 | 2018-09-18 | 郑州云海信息技术有限公司 | 一种多浏览器兼容性自动化测试方法 |
CN109634844A (zh) * | 2018-11-06 | 2019-04-16 | 北京奇虎科技有限公司 | Js代码测试方法、装置及电子设备 |
CN110750460A (zh) * | 2019-10-24 | 2020-02-04 | 深圳前海微众银行股份有限公司 | 浏览器兼容性的检测方法、装置、设备及可读存储介质 |
CN111159045A (zh) * | 2019-12-31 | 2020-05-15 | 中国银行股份有限公司 | 一种兼容性问题检测方法、装置及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312055A (zh) * | 2021-05-28 | 2021-08-27 | 支付宝(杭州)信息技术有限公司 | 一种小程序投放方法、装置以及设备 |
CN113312055B (zh) * | 2021-05-28 | 2023-02-24 | 支付宝(中国)网络技术有限公司 | 一种小程序投放方法、装置以及设备 |
CN113821213A (zh) * | 2021-09-29 | 2021-12-21 | 平安普惠企业管理有限公司 | 基于人工智能的前端代码检测及修复方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10613971B1 (en) | Autonomous testing of web-based applications | |
CN109376166B (zh) | 脚本转换方法、装置、计算机设备及存储介质 | |
CN110688307B (zh) | JavaScript代码检测方法、装置、设备和存储介质 | |
CN110704297B (zh) | 代码评审方法、装置、计算机设备及存储介质 | |
CN112579466B (zh) | 测试用例的生成方法、装置及计算机可读存储介质 | |
CN112540925A (zh) | 新特性兼容性检测***及方法、电子设备及可读存储介质 | |
CN111459495A (zh) | 单元测试代码文件生成方法、电子装置及存储介质 | |
CN112328489A (zh) | 测试用例生成方法、装置、终端设备和存储介质 | |
CN114138244A (zh) | 模型类文件自动生成方法、装置、存储介质及电子设备 | |
CN113434395A (zh) | 测试用例的自动化生成方法、装置、设备及介质 | |
CN114580346A (zh) | 结合rpa和ai的信息生成方法、装置、电子设备及存储介质 | |
CN116737535A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN111158973A (zh) | 一种web应用动态演化监测方法 | |
CN116166533A (zh) | 接口测试方法、装置、终端设备以及存储介质 | |
CN114896269A (zh) | 结构化查询语句检测方法、装置、电子设备及存储介质 | |
CN110515653B (zh) | 文档生成方法、装置、电子设备及计算机可读存储介质 | |
CN114546381A (zh) | 前端页面代码文件生成方法、装置、电子设备及存储介质 | |
CN110096281B (zh) | 代码解析方法、解析服务器、存储介质及装置 | |
CN110990271A (zh) | 代码性能检测方法、装置、设备及存储介质 | |
CN112148581A (zh) | 代码规范检查方法、装置、***及存储介质 | |
CN110955433B (zh) | 一种自动化部署脚本的生成方法及装置 | |
CN113342862B (zh) | 查询推荐方法、装置、电子设备及可读存储介质 | |
CN114416603B (zh) | Ui元素测试方法、装置、存储介质和设备 | |
CN117573140B (zh) | 一种通过扫描代码生成文档的方法、***及装置 | |
CN118035210A (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 |