1.本说明书实施例涉及前端开发技术领域,特别涉及一种网站测试方法、装置、设备及存储介质。
背景技术:2.网站是用于展示特定内容的网页的集合。通过访问特定的网站,用户能够获取到相应的信息或体验。为了保证用户浏览网站的体验,一般需要对网站的性能进行评估,例如针对首页打开速度、动画流畅程度、静态资源响应时间等项目进行分析以确定网站的性能。由于网站性能对于用户访问量、留存率等具有较大的影响,因此,对网站性能进行评估,并针对评估结果对网站进行改进,对保证网站发展具有重要的意义。
3.但是,目前在针对网站性能进行测试时,所针对的都是已经完成部署,处于上线运行状态的网站,例如谷歌pagespeed、webpage等都是针对上线的网站。而在线性能测试不仅要求网站开发完毕,也无法保证部分测试的稳定性。针对仍然处于开发测试阶段的网站,目前暂时没有较好的实现网站性能测试的方法。因此,如何实现针对开发状态的网站的性能检测是当前所亟需解决的问题。
技术实现要素:4.本说明书实施例的目的是提供一种网站测试方法、装置、设备及存储介质,以解决如何有效地针对开发状态的网站进行性能测试的问题。
5.为解决上述技术问题,本说明书实施例提供一种网站测试方法,包括:在目标网站中设置检测插件;所述目标网站包括处于开发状态的网站;所述检测插件用于对网站的性能进行评估;在检测到所述目标网站开发至特定状态的情况下,调用所述检测插件输出所述目标网站的性能参数;所述特定状态对应于预先设定的实现目标网站测试的时刻;所述性能参数包括针对评估项目的运行结果;基于所述性能参数确定所述目标网站的测试结果。
6.本说明书实施例还提出一种网站测试装置,包括:检测插件设置模块,用于在目标网站中设置检测插件;所述目标网站包括处于开发状态的网站;所述检测插件用于对网站的性能进行评估;性能参数输出模块,用于在检测到所述目标网站开发至特定状态的情况下,调用所述检测插件输出所述目标网站的性能参数;所述特定状态对应于预先设定的实现目标网站测试的时刻;所述性能参数包括针对评估项目的运行结果;测试结果确定模块,用于基于所述性能参数确定所述目标网站的测试结果。
7.本说明书实施例还提出一种网站测试设备,包括存储器和处理器;所述存储器,用于存储计算机程序指令;所述处理器,用于执行所述计算机程序指令以实现以下步骤:在目标网站中设置检测插件;所述目标网站包括处于开发状态的网站;所述检测插件用于对网站的性能进行评估;在检测到所述目标网站开发至特定状态的情况下,调用所述检测插件输出所述目标网站的性能参数;所述特定状态对应于预先设定的实现目标网站测试的时
刻;所述性能参数包括针对评估项目的运行结果;基于所述性能参数确定所述目标网站的测试结果。
8.本说明书实施例还提出一种计算机存储介质,其上存储有计算机程序指令,所述计算机程序指令在被执行时实现上述网站测试方法。
9.由以上本说明书实施例提供的技术方案可见,本说明书实施例在网站的开发阶段中,在目标网站中设置检测插件,并在目标网站开发至特定状态的情况下,利用所述检测插件输出此时目标网站的性能参数,从而针对相应的评估项目的运行结果进行确定,进而能够利用性能参数来确定对应于所述目标网站的测试结果,并在之后的步骤中基于测试结果确定网站的开发效果,以及对网站进行相应的调整。通过上述方法,有效地针对未上线的处于开发状态的网站进行了测试,从而能够提前发现开发中的网站的相应问题,及时地对网站进行改善,帮助实现网站的开发,避免了在网站上线后才确定网站的性能,提高了用户的使用体验。
附图说明
10.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
11.图1为本说明书实施例一种网页测试方法的流程图;
12.图2为本说明书实施例一种网站构建流程的示意图;
13.图3为本说明书实施例一种性能参数获取流程的示意图;
14.图4为本说明书实施例一种基于插件实现网页性能测试和优化的流程示意图;
15.图5为本说明书实施例一种网页测试装置的模块图;
16.图6为本说明书实施例一种网页测试设备的结构图。
具体实施方式
17.下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
18.为了解决上述技术问题,介绍本说明书实施例一种网站测试方法。所述网站测试方法的执行主体为网站测试设备,所述网站测试设备包括但不限于服务器、工控机、pc机等。如图1所示,所述网站测试方法可以包括以下具体实施步骤。
19.s110:在目标网站中设置检测插件;所述目标网站包括处于开发状态的网站;所述检测插件用于对网站的性能进行评估。
20.目标网站即为需要进行性能检测的网站。由于网站在应用时针对展示效果,运行流畅程度等方面对用户均有较为直接的影响,因此,需要对目标网站进行性能测试,以确定网站在需要评估的多个方面的表现效果,进而根据测试结果来确定目标网站的性能,并基于测试结果对网站进行改善。
21.由于网站一般为多个网页的集合,因此在针对网站进行测试时主要是针对网站所包含的网页。具体测试时可以针对各个网页依次进行测试,也可以在考虑不同网页之间的联系,例如网页之间的跳转,以及网页之间的关联性的情况下针对目标网站进行测试。实际应用中可以通过其他方式实现目标网站的测试,并不限于上述示例,在此不再赘述。
22.在本说明书实施例中,优选的,所述目标网站可以是处于开发状态的网站,即所述目标网站仍处于离线开发阶段,并未正式上线运行。
23.由于在实际应用中,针对网站进行测试主要是利用一些在线性能检测网站进行网站性能检测,即进行性能分析的网站部署上线是必要条件,无法对开发状态的网站进行检测。而由于部分网站在境外部署,打开速度比较慢,甚至可能会存在网站打不开的情况。因此,针对离线状态下的网站进行性能检测具有重要的意义。
24.检测插件即为本说明书实施例中对目标网站进行测试的工具。插件一般是基于一定的应用程序接口所编写出的程序,往往是基于特定的程序平台运行,从而调用特定的插件程序来处理相应的任务。
25.由于本说明书实施例的目的即为了实现针对目标网站的性能测试,因此,所述检测插件可以获取到网站的相应执行效果,进而根据所获取到的参数对网站的性能进行评估,实现对于网站的测试。
26.在本说明书实施例中,优选的,所述检测插件可以是chrome
‑
launcher、lighthouse中的至少一种。
27.chrome
‑
launcher插件作用是使用node启动chrome浏览器。在本说明书实施例中,利用chrome
‑
launcher插件启动chrome浏览器时,chrome
‑
launcher的参数配置为
“‑‑
headless”,即无头浏览器。无头浏览器是没有图形用户界面(gui)的浏览器。无头浏览器可以实现自动化可用性测试。使用无头浏览器可以打开配置的网址,无头浏览器展现的内容与完全浏览器中的内容完全相同,但是用户看不到(相当于浏览器已经打开了网站,但是没有界面,所以只要用于自动化测试等领域)。无头浏览器即可以加载本地地址(即开发者正在开发的网站地址),也可以加载已上线网络地址。通过利用chrome
‑
launcher插件打开无头浏览器,能够有效利用该插件实现目标网站的离线测试。
28.lighthouse插件分析web应用程序和网站,收集现代性能指标以及对开发人员最佳实践的见解。lighthouse分析网站性能需要两个参数,第一个参数就是带分析网站的地址,可以是本地地址,也可以是部署后的地址;第二个参数是配置信息,例如可以是相应的网站性能数据、数据格式、网站性能维度等。lighthouse会根据配置信息输出一个javascript对象,javascript对象的report字段是待分析网站的性能数据。
29.上述示例只是为了更好地对插件的性能进行分析,实际应用中也可以通过其他插件实现对网站性能测试,在此不再赘述。
30.s120:在检测到所述目标网站开发至特定状态的情况下,调用所述检测插件输出所述目标网站的性能参数;所述特定状态对应于预先设定的实现目标网站测试的时刻;所述性能参数包括针对评估项目的运行结果。
31.网站构建产物是静态资源文件,静态包括html文件(即浏览器可以打开的文件)、css样式文件(网站页面的样式)、javascript文件(负责网站交互的文件)、图片资源、字体资源等。
32.由于本说明书实施例是针对开发状态的网站进行性能分析,因此,根据目标网站的开发阶段,可以分别进行相应的检测,从而在检测到目标网站开发至特定状态后,利用检测插件输出目标网站的性能参数。
33.网站性能检测插件核心流程是在构建的特定时刻对构建产物做性能分析,将性能分析结果展示给开发者,开发者根据网站性能结果对网站程序进行优化。具体的,可以预先设置相应的特征状态,在检测到目标网站开发至所述特定状态后,再利用检测插件获取性能参数。所述特定状态即为预先设定的实现目标网站测试的时刻,可以根据测试需求进行设置。
34.为了对所设置的特征状态进行更好的理解,首先对目标网站开发的整体流程进行介绍。如图2所示,为目标网站开发过程中的前端资源打包流程图。下面结合附图2,对其中各个步骤的具体执行过程进行介绍,具体描述内容如下所示。
35.(1)environment,在编译器准备环境时调用,时机就在配置文件中初始化插件之后。
36.(2)afterenvironment,当编译器环境设置完成后,在environment后直接调用。
37.(3)entryoption,在webpack选项中的entry被处理过之后调用。
38.(4)afterplugins,在初始化内部插件集合完成设置之后调用。
39.(5)afterresolvers,resolver设置完成之后触发。
40.(6)initialize,当编译器对象被初始化时调用。
41.(7)beforerun,在开始执行一次构建之前调用,compiler.run方法开始执行后立刻进行调用。
42.(8)run,在开始读取records之前调用。
43.(9)beforecompile,在创建compilation parameter之后执行。
44.(10)compile,beforecompile之后立即调用,但在一个新的compilation创建之前。
45.(11)thiscompilation,初始化compilation时调用,在触发compilation事件之前调用。
46.(12)compilation,compilation创建之后执行。
47.(13)make,compilation结束之前执行。
48.(14)aftercompile,compilation结束和封印之后执行。
49.(15)shouldemit,在输出asset之前调用。返回一个布尔值,告知是否输出。
50.(16)emit,输出asset到output目录之前执行。
51.(17)afteremit,输出asset到output目录之后执行。
52.(18)assetemitted,在asset被输出时执行。此钩子可以访问被输出的asset的相关信息,例如它的输出路径和字节内容。
53.(19)done,在compilation完成时执行。
54.(20)failed,在compilation失败时调用。
55.由于本说明书实施例主要针对的是实时分析网站性能,而分析网站性能需要处理网站构建后的静态资源,则优选的,插件执行时机是webpack输出网站静态资源后的时机,即所述特定状态为步骤(16)emit,输出asset到output目录之前执行和步骤(17)
afteremit,输出asset到output目录之后所对应的时刻。
56.性能参数即为检测插件根据预先设置的评估项目所输出的相应参数,用于对相应的评估项目的执行结果进行评测。具体的,所述检测插件可以利用其中预先设置的程序来执行相应的测试,或是直接输出对应项目的参数值,作为所述性能参数。
57.评估项目可以是预先设置需要进行评估的类别。在设置评估项目时,可以考虑不同因素对网站展示效果的影响,并基于这些因素的影响程度从中选取得到所述评估项目,以通过评估项目实现网站展示效果,用户使用体验方面的优化。
58.在一些实施方式中,所述评估项目包括性能项目(performance)、可用性项目(accessibility)、实践效果项目(best practices)、搜索效果项目(seo)、网页端程序效果项目(pwa)中的至少一种。
59.当评估项目为性能项目时,当利用检测插件输出所述目标网站的性能参数时,可以是调用所述检测插件输出对应于所述目标网站的首个节点渲染耗时、cpu空闲耗时、网站的加载速度、响应时间中的至少一个参数。
60.性能项目主要针对的是网站生成及渲染网页的效果、展示网页以及与用户进行交互时的性能的效果。实际应用中,例如还可以针对首次内容绘制(first contentful paint)、首次有效绘制(first meaningful paint)、渲染速度(speed index)、首次cpu空闲(first cpu idle)、可交互时间(time to interactive)、估计输入延迟(estimated input latency)等参数对于网页展示的表现效果进行描述。此外,性能项目还可以针对一些性能优化方向提出相应的建议,针对这些建议内容也可以进行相应的评估,并获取到相应的评估参数。
61.当评估项目为可用性项目时,当利用检测插件输出所述目标网站的性能参数时,可以是调用所述检测插件输出对应于所述目标网站的网站背景色、网站前景色、颜色对比度中的至少一个参数。
62.可用性项目主要针对的是网站的无障碍使用情况,从而帮助一些身体不健全(例如视力、听力不健全)的用户能够更好的使用网站,以及与网站进行更好的交互。其中较为直观的是设置网站背景色与前景色之间的对比度来保证用户对网页的查看。针对一些与声音播放相关的项目可以进行评估,例如可以评估音频默认音量、音频播放清晰度等。实际应用中可以设置其他项目作为所述可用性项目进行评估,并不限于上述示例,在此不再在赘述。
63.当评估项目为实践效果项目时,当利用检测插件输出所述目标网站的性能参数时,可以是调用所述检测插件输出对应于所述目标网站的http开启状态、漏洞数目、漏洞类型中的至少一个参数。
64.实践效果项目主要用于对网站的实际效果进行评估。例如,当网站并未开启https,或是并未针对https调用全部资源时,网站可能存在一定的安全性隐患。而针对网站所存在的其他漏洞,也可以列入所述实践效果项目中进行评估,在此不再赘述。
65.当评估项目为搜索效果项目时,当利用检测插件输出所述目标网站的性能参数时,可以是调用所述检测插件输出对应于所述目标网站的网站标题、网站关键词、网站描述信息、网站搜索结果中的至少一个参数。
66.搜索效果项目主要是对应于网站中的搜索引擎的相应规则,具体的,例如是通过
一定的优化手段、方式即方法,如合理配置网站的标题、关键词、网站描述信息,提高网站在搜索引擎内的自然排名,提升搜索引擎收录指标,使得网站更容易被检索到。搜索效果项目即主要针对这些方面进行评估。具体的,当网页中的内容涉及文档内容描述不清晰,不存在概述信息,以及标签格式不符合相应规范的情况下,都会影响对应于所述搜索效果项目的性能参数。实际应用中也可以设置其他类型的项目作为所述搜索效果项目,在此不再赘述。
67.当评估项目为网页端程序效果项目时,当利用检测插件输出所述目标网站的性能参数时,可以是调用所述检测插件输出对应于所述目标网站的安卓端程序功能模拟效果、ios端程序功能模拟效果中的至少一个参数。
68.网页端程序效果项目主要针对的是网页与移动端相应功能之间的联动效果。例如可以使用多种技术来增强web app(即web端程序)的功能,可以让网站的体验变得更好,能够模拟一些原生(如安卓app、ios app)功能,比如通知推送,让web网页应用呈现和原生应用相似的体验。
69.具体的,针对响应速度方面,当页面在移动网络上加载速度不够快、当前页面在离线状态下未响应、初始域名在离线状态下未响应时,均会影响在该方面的评价。在安装性方面,当并未使用https,并未注册用于控制页面和开始域名的服务器,app并未符合安装要求时,也会影响在该方面的评估结果。此外,并未关联http和https,并未针对显示界面进行适应性调整以及无法设置正确展示相应主题等问题也都会性能参数的输出造成影响。上述示例主要是为了对性能参数的确定过程进行描述,实际应用中根据需要可以设置其他的内容作为用于评估目标网站的网页端程序效果项目的项目,并获取到对应的性能参数,在此不再进行赘述。
70.相应的,在设置相应的评估项目的同时,还可以针对这些评估项目设置对应的评估规则。一般情况下插件往往只能获取到对应于网站执行效果的相应参数,而性能参数一般是直接对网站的执行效果进行展示的参数,因此,所述检测插件可以基于程序中所设置的评估规则将执行参数转化为对应的性能参数,从而能够更为有效地对网站的具体执行效果进行分析。
71.具体的评估规则可以基于实际应用的需求进行设置,例如,所述评估规则可以是直接确定参数合格与否,也可以是将网站的执行效果转换为相应的分数值,在此不再对评估规则的设置过程进行赘述。
72.在一些实施方式中,通过检测插件获取目标网站的性能参数的具体过程可以是先获取所述目标网站的域名,例如在离线测试的情况下,所获取到的url参数,即待分析网页的地址可以是http://localhost:8080,localhost或者127.0.0.1表示本地地址,即网站不需要在服务器部署。url参数需要满足网址格式,本说明书实施例中使用正则表达式对url参数做校验,核心正则校验规则为:/^(((ht|f)tps?)://)?[\w
‑
]+(\.[\w
‑
]+)+([\w.,@?^=%&:/~+#
‑
]*[\w@?^=%&/~+#
‑
])?$/,对url格式未校验通过,插件不会执行,并提示“请配置正确的url参数”的信息,从而保证目标网站的域名的正确获取。
[0073]
之后,调用无头浏览器打开对应于所述目标网站的域名的测试网站;所述无头浏览器用于实现离线状态下的网站自动化测试。chrome
‑
launcher的参数配置为
“‑‑
headless”,即无头浏览器。无头浏览器是没有图形用户界面(gui)的浏览器。无头浏览器可以实现自动化可用性测试。使用无头浏览器可以打开配置的网址,无头浏览器展现的内容
与完全浏览器中的内容完全相同,但是用户看不到(相当于浏览器已经打开了网站,但是没有界面,所以只要用于自动化测试等领域)。无头浏览器即可以加载本地地址(即开发者正在开发的网站地址),也可以加载已上线网络地址。通过无头浏览器可以方便有效地实现网站的离线测试。
[0074]
最终,基于所生成的测试网站,可以输出对应于所述测试网站的性能参数。由于所述测试网站为离线运行的网站,实现了本说明书实施例所针对的网站在上线之前进行测试的目的,保证了测试效果。
[0075]
在检测插件输出性能参数,为了便于对所输出的性能参数进行查看,针对所述性能参数可以预先设置有特定的格式。
[0076]
在一些实施方式中,所述检测插件输出的性能参数对应的格式包括json文件格式、html文件格式、csv文件格式中的至少一种。
[0077]
当配置为“json”输出格式时,网站性能数据输出到json文件中,json文件都是以键值对形式存储。针对这些形式的文件,网站开发者可以使用程序解析json数据(json数据中已经包含网站性能数据),实现网站性能数据的自定义展示,或者将网站性能数据存储到数据库中便于后续处理。
[0078]
对于输出格式配置为“html”时,网站性能数据输出到html文件中,当配置网站性能数据查看端口参数后可以直接在浏览器范围访问http://localhost:网站性能数据查看端口,查看查看网页性能数据。用户可以手动打开html文件查看网站性能数据(即通过使用浏览器打开html文件)。
[0079]
当配置为“csv”输出格式时,网站性能数据输出到csv文件中,csv文件类型类似excel文件,开发者也可以打开csv文件查看性能数据。具体的查看过程可以基于实际应用情况进行设置。
[0080]
上述输出格式指示对输出的性能参数的格式进行示例性的描述,实际应用中根据需求可以输出为其他格式,对此不做限制。
[0081]
在具体应用时,检测插件可以通过文件的形式输出对应的性能参数。具体的,插件可以配置网站性能数据输出的文件名,输出文件名参数为字符串,文件名默认是“report.html”。如输出文件名参数配置为“test.html”,插件运行完成后就会在程序根目录下产生一个test.html的文件,这个文件包含了网站的性能数据。
[0082]
下面结合附图3,利用一个具体的示例对性能参数的获取过程进行介绍。如图3所示,获取性能参数的具体步骤如下所示。
[0083]
s310:插件配置参数校验。
[0084]
s320:webpack afteremit构建时机开始执行。
[0085]
s330:启动无头chrome浏览器。
[0086]
s340:使用lighthouse分析网站性能。
[0087]
s350:关闭无头浏览器。
[0088]
s360:判断是否配置网站性能数据查看端口参数并且性能数据输出格式为html。若是,跳转步骤s370,反之跳转步骤s380。
[0089]
s370:浏览器打开查看网页性能数据。
[0090]
s380:用户手动打开性能格式文件查看性能数据。
[0091]
s130:基于所述性能参数确定所述目标网站的测试结果。
[0092]
在获取到性能参数后,可以根据所述性能参数来确定所述目标网站的测试结果。由于性能参数能够体现目标网站在不同方面的展示效果,因此根据性能参数可以获取到对应于目标网站的测试结果。
[0093]
所述测试结果即用于表示目标网站在上线之前的运行效果,进而根据所述测试结果确定保留目标网站当前的设置状态,或是针对其中的一些缺陷进行改善。具体的可以预先设置相应的策略,根据测试结果调用对应的策略对目标网站进行处理,以优化目标网站的展示效果。
[0094]
在一些实施方式中,所述检测插件配置有数据查看端口。数据查看端口用于对相应的性能参数进行查看和调用。当插件配置网站性能数据查看端口这个参数时,如“8888”,当插件运行完成后开发者可以在浏览器中输入“http://127.0.0.1:8888/”直观查看网页性能数据,从而实现性能数据的查看。
[0095]
相应的,在基于所述性能参数确定所述目标网站的测试结果之前,可以基于所述数据查看端口获取所述性能参数,保证了性能参数的获取。
[0096]
实际应用中也可以采用其他方式来导出所述性能参数,并不限于上述示例,在此不再赘述。
[0097]
下面结合附图4利用一个具体的示例对利用插件实现网站的测试及优化的过程进行介绍,如图4所示,基于插件对网站进行测试及优化的具体步骤如下所示。
[0098]
s410:安装插件。
[0099]
s420:配置插件参数。
[0100]
s430:查看插件运行数据。
[0101]
s440:根据插件运行数据优化网站程序。
[0102]
通过上述实施例和场景示例的介绍,可以看出,所述方法在网站的开发阶段中,在目标网站中设置检测插件,并在目标网站开发至特定状态的情况下,利用所述检测插件输出此时目标网站的性能参数,从而针对相应的评估项目的运行结果进行确定,进而能够利用性能参数来确定对应于所述目标网站的测试结果,并在之后的步骤中基于测试结果确定网站的开发效果,以及对网站进行相应的调整。通过上述方法,有效地针对未上线的处于开发状态的网站进行了测试,从而能够提前发现开发中的网站的相应问题,及时地对网站进行改善,帮助实现网站的开发,避免了在网站上线后才确定网站的性能,提高了用户的使用体验。
[0103]
基于图1所对应的网站测试方法,介绍本说明书实施例一种网站测试装置。所述任务处理装置设置于所述网站测试设备。如图5所示,所述网站测试装置包括以下模块。
[0104]
检测插件设置模块510,用于在目标网站中设置检测插件;所述目标网站包括处于开发状态的网站;所述检测插件用于对网站的性能进行评估。
[0105]
性能参数输出模块520,用于在检测到所述目标网站开发至特定状态的情况下,调用所述检测插件输出所述目标网站的性能参数;所述特定状态对应于预先设定的实现目标网站测试的时刻;所述性能参数包括针对评估项目的运行结果。
[0106]
测试结果确定模块530,用于基于所述性能参数确定所述目标网站的测试结果。
[0107]
在一些实施方式中,所述特定状态包括输出asset至输出目录之前和/或输出
asset至输出目录之后的状态。
[0108]
在一些实施方式中,所述性能参数输出模块,包括:
[0109]
域名获取单元,用于获取所述目标网站的域名;
[0110]
测试网站打开单元,用于调用无头浏览器打开对应于所述目标网站的域名的测试网站;所述无头浏览器用于实现离线状态下的网站自动化测试;
[0111]
性能参数输出单元,用于输出对应于所述测试网站的性能参数。
[0112]
在一些实施方式中,所述评估项目包括性能项目;所述性能参数输出模块,包括:
[0113]
性能项目参数输出单元,用于调用所述检测插件输出对应于所述目标网站的首个节点渲染耗时、cpu空闲耗时、网站的加载速度、响应时间中的至少一个参数。
[0114]
在一些实施方式中,所述评估项目包括可用性项目;所述性能参数输出模块,包括:
[0115]
可用性项目参数输出单元,用于调用所述检测插件输出对应于所述目标网站的网站背景色、网站前景色、颜色对比度中的至少一个参数。
[0116]
在一些实施方式中,所述评估项目包括实践效果项目;所述性能参数输出模块,包括:
[0117]
实践效果项目参数输出单元,用于调用所述检测插件输出对应于所述目标网站的http开启状态、漏洞数目、漏洞类型中的至少一个参数。
[0118]
在一些实施方式中,所述评估项目包括搜索效果项目;所述性能参数输出模块,包括:
[0119]
搜索效果项目参数输出单元,用于调用所述检测插件输出对应于所述目标网站的网站标题、网站关键词、网站描述信息、网站搜索结果中的至少一个参数。
[0120]
在一些实施方式中,所述评估项目包括网页端程序效果项目;所述性能参数输出模块,包括:
[0121]
网页端程序效果参数输出单元,用于调用所述检测插件输出对应于所述目标网站的安卓端程序功能模拟效果、ios端程序功能模拟效果中的至少一个参数。
[0122]
在一些实施方式中,所述检测插件包括chrome
‑
launcher、lighthouse中的至少一种。
[0123]
在一些实施方式中,所述检测插件输出的性能参数对应的格式包括json文件格式、html文件格式、csv文件格式中的至少一种。
[0124]
在一些实施方式中,所述插件配置有数据查看端口;所述装置还包括:
[0125]
性能参数获取模块,用于基于所述数据查看端口获取所述性能参数。
[0126]
在一些实施方式中,所述测试结果获取模块,包括:
[0127]
待优化项目确定模块,用于在存在至少一种评估项目对应的性能参数小于合格参数值的情况下,确定所述性能参数对应的评估项目为待优化项目;
[0128]
优化策略设置模块,用于针对所述待优化项目设置优化策略;所述优化策略,用于改善所述待优化项目。
[0129]
所述装置在网站的开发阶段中,在目标网站中设置检测插件,并在目标网站开发至特定状态的情况下,利用所述检测插件输出此时目标网站的性能参数,从而针对相应的评估项目的运行结果进行确定,进而能够利用性能参数来确定对应于所述目标网站的测试
结果,并在之后的步骤中基于测试结果确定网站的开发效果,以及对网站进行相应的调整。通过上述方法,有效地针对未上线的处于开发状态的网站进行了测试,从而能够提前发现开发中的网站的相应问题,及时地对网站进行改善,帮助实现网站的开发,避免了在网站上线后才确定网站的性能,提高了用户的使用体验。
[0130]
基于图1所对应的网站测试方法,本说明书实施例提供一种网站测试设备。如图6所示,所述网站测试设备可以包括存储器和处理器。
[0131]
在本实施例中,所述存储器可以按任何适当的方式实现。例如,所述存储器可以为只读存储器、机械硬盘、固态硬盘、或u盘等。所述存储器可以用于存储计算机程序指令。
[0132]
在本实施例中,所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式等等。所述处理器可以执行所述计算机程序指令实现以下步骤:在目标网站中设置检测插件;所述目标网站包括处于开发状态的网站;所述检测插件用于对网站的性能进行评估;在检测到所述目标网站开发至特定状态的情况下,调用所述检测插件输出所述目标网站的性能参数;所述特定状态对应于预先设定的实现目标网站测试的时刻;所述性能参数包括针对评估项目的运行结果;基于所述性能参数确定所述目标网站的测试结果。
[0133]
本说明书还提供计算机存储介质的一个实施例。所述计算机存储介质包括但不限于随机存取存储器(random access memory,ram)、只读存储器(read
‑
only memory,rom)、缓存(cache)、硬盘(hard disk drive,hdd)、存储卡(memory card)等等。所述计算机存储介质存储有计算机程序。在所述计算机程序在被执行时实现本说明书图1所对应实施例中的程序指令。
[0134]
需要说明的是,上述网站测试方法、装置、设备及存储介质可以应用于前端开发技术领域,也可以应用至除前端开发技术领域外的其他技术领域,对此不做限制。
[0135]
虽然上文描述的过程流程包括以特定顺序出现的多个操作,但是,应当清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。
[0136]
虽然上文描述的过程流程包括以特定顺序出现的多个操作,但是,应当清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。
[0137]
本技术是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0138]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0139]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0140]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0141]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0142]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd
‑
rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0143]
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd
‑
rom、光学存储器等)上实施的计算机程序产品的形式。
[0144]
本说明书实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0145]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0146]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。