首页 / 性能优化的优化效果的检测方法及检测装置

性能优化的优化效果的检测方法及检测装置无效专利 发明

技术领域

[0001] 本发明涉及性能优化技术领域,具体地,涉及一种性能优化的优化效果的检测方法及一种性能优化的优化效果的检测装置。

相关背景技术

[0002] 随着信息技术的不断发展,在日常生活中随处可见对网页或应用软件的使用,因此网页或应用软件的使用性能对人们的日常用户体验影响较大。在产品开发过程完成后,技术人员往往会对产品进行各方面的测试,其中就包括对产品的性能测试,通过对产品进行性能测试以了解该产品在实际应用过程中的使用性能以对产品进行进一步的优化或调整,从而更好地满足用户的实际使用需求。
[0003] 在实际应用过程中,由于现有的性能测试方案往往是针对重量级的测试,比如模拟当前产品的所有应用环境并对产品进行性能测试,因此对测试环境有较高的要求,比如至少要求单台的测试服务器的性能指标与线上的服务器性能指标保持一致,而这些条件往往花费较大或难以满足。
[0004] 然而当产品应用于面向企业的场景时,尤其是作为企业内部的服务系统时,由于用户量较低,因此产品体量较小,而此时若依然采用传统的性能测试方法,则测试成本较高,同时传统的测试方法在生成对应的测试数据后,需要手动编辑对应的测试报告,为技术人员造成了极大的困扰,降低了技术人员的工作效率。

具体实施方式

[0030] 为了克服现有技术中传统性能测试方法的测试成本较高、测试方法落后导致工作效率低下的技术问题,本发明实施例提供一种性能优化的优化效果的检测方法及一种性能优化的优化效果的检测装置,通过直接创建统一的检测任务并直接运行优化前后的程序,检测优化前后的程序的优化效果,降低了检测成本,同时自动生成检测结果,提高了产品的质量,提高了工作效率和用户体验。
[0031] 以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
[0032] 需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0033] 本发明实施例中的术语“系统”和“网络”可被互换使用。“多个”是指两个或两个以上,鉴于此,本发明实施例中也可以将“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。另外,需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
[0034] 请参见图1,本发明提供一种性能优化的优化效果的检测方法,所述检测方法包括:
[0035] S10)创建检测任务;
[0036] S20)基于所述检测任务运行待检测程序,并获得对应的运行结果,其中所述待检测程序包括优化前待检测程序和优化后待检测程序;
[0037] S30)对所述运行结果进行分析,并生成对应的检测结果。
[0038] 在一种可能的实施方式中,技术人员首先创建对将要检测的程序的检测任务,例如技术人员可以根据当前测试环境、测试策略等参数信息创建检测任务,并将该检测任务作为统一的检测任务运行待检测程序,在本发明实施例中,该待检测程序中包括优化前待检测程序和优化后待检测程序,在创建检测任务后,按照该检测任务对优化前待检测程序进行运行,并获得对应的运行结果,然后同样以该检测任务对优化后待检测程序进行运行,并获得对应的运行结果,最后对上述运行结果进行优化效果的分析,从而生成对应的检测结果。
[0039] 需要说明的是,本发明所述检测方法可以应用于在线或离线服务器、个人终端、移动智能终端等终端设备,都应该属于本发明的保护范围,本发明实施例所述的在线服务器端或其他终端设备不应视为对本发明保护范围的限制,在此不做过多赘述。
[0040] 由于传统方法中需要将测试程序发送至在线服务器端或向在线服务器端发送测试数据,才能实现对待检测程序的优化效果的检测,因此往往耗费巨大且效率低下,因此在本发明实施例中,通过在离线环境下采用模拟相同的测试环境,而不是模拟实际的应用环境来对待检测程序进行优化效果的检测,从而在进行优化效果的检测过程中无需依赖于对实际应用场景或模拟实际应用场景所需资源的依赖性,大大优化了检测过程中的检测成本,降低了检测复杂度。
[0041] 在本发明实施例中,所述创建检测任务,包括:判断是否存储有任务管理数据列表;在未存储有所述任务管理数据列表的情况下,获取任务创建操作以创建新的检测任务,基于新的检测任务生成新的任务管理数据列表;在存储有所述任务管理数据列表的情况下,判断是否获取到任务选择操作;在获取到所述任务选择操作的情况下,基于所述任务选择操作创建对应的检测任务;在未获取到所述任务选择操作的情况下,获取任务创建操作以创建新的检测任务,并基于新的检测任务对所述任务数据列表进行更新。
[0042] 在本发明实施例中,通过在创建检测任务的过程中创建任务管理数据列表,技术人员在多次检测时可以快速选用历史检测任务,而无需每次都对检测任务进行配置和创建,从而进一步提高技术人员的操作效率和工作效率。
[0043] 请参见图2,在本发明实施例中,所述创建新的检测任务,包括:
[0044] S1001)获取任务创建元素信息;
[0045] S1002)基于所述任务创建元素信息生成对应的执行动作;
[0046] S1003)基于所述执行动作生成执行策略;
[0047] S1004)基于所述执行策略创建所述检测任务。
[0048] 进一步地,在本发明实施例中,所述获取任务创建元素信息,包括:判断是否存储有与所述任务创建元素信息对应的元素数据列表;在未存储有所述元素数据列表的情况下,获取编辑操作,并基于所述编辑操作获取对应的被选元素数据;在存储有所述元素数据列表的情况下,判断是否获取到选择操作;在获取到所述选择操作的情况下,获取在所述元素数据列表中与所述选择操作对应的被选元素数据;在未获取到所述选择操作的情况下,判断是否获取到编辑操作;在获取到所述编辑操作的情况下,基于所述编辑操作获取对应的被选元素数据;将所述被选元素数据作为任务创建元素信息,并基于所述被选元素数据对所述元素数据列表进行更新或生成新的元素数据列表。
[0049] 在一种可能的实施方式中,技术人员将要对某待检测程序进行优化效果的检测,因此首先创建检测任务。例如技术人员在电子终端上打开检测任务的设置页面,在该页面中,技术人员首先查看当前是否存储有任务管理数据列表(例如该任务管理数据列表为任务管理数据库),并通过查看任务管理数据库确定没有与当前检测环境相匹配的历史检测任务,因此着手创建新的检测任务。
[0050] 技术人员首先输入创建元素信息,例如在本发明实施例中,所述创建元素信息包括当前服务器的环境数据信息、接口数据信息以及构建器数据信息,用户输入与当前需求相匹配的环境数据信息、接口数据信息以及构建器数据信息后,该电子终端执行本发明所述的检测方法以生成对应的执行动作,然后根据生成的执行动作生成对应的执行策略,在该执行策略里包含至少一个执行动作以及每个执行动作的执行顺序,在生成上述执行策略后,将生成的执行策略作为检测任务。
[0051] 技术人员在输入创建元素信息的过程中,首先查看将要输入的创建元素信息是否有对应的元素数据列表(例如该元素数据列表为元素数据库),例如在输入环境数据信息的过程中,技术人员首先查看是否有对应的环境数据库,若有则查看在该环境数据库中是否存在与当前环境相匹配的环境数据,若有相匹配的环境数据则直接选择该环境数据从而完成对环境数据的输入操作,若没有相匹配的环境数据或未查看到环境数据库,则用户手动输入新的环境数据信息,并跟进该新的环境数据信息对原来的环境数据库进行更新或者创建新的环境数据库,从而实现对环境数据的管理。
[0052] 在本发明实施例中,通过在创建检测任务的过程中,对历史的设置信息进行存储管理,当后续进行其他检测任务时可以根据历史的设置信息进行快速选择,从而实现快速的检测任务的创建操作,而不需要在每次进行检测任务的创建时都重新设置检测任务的各个元素信息,从而提高了技术人员的工作效率,提高了用户体验。
[0053] 在本发明实施例中,所述任务创建元素信息包括环境数据信息、接口数据信息和构建器信息,所述基于所述任务创建元素信息生成对应的执行动作,包括:基于所述环境数据信息和所述构建器信息生成对应的构建器执行动作;基于所述环境数据信息和所述接口数据信息生成对应的接口执行动作;所述基于所述执行动作生成执行策略,包括:基于所述构建器执行动作和/或所述接口执行动作生成所述执行策略。
[0054] 在一种可能的实施方式中,在生成对待检测程序的执行策略的过程中,通过对待检测程序进行分析以获得需要对待检测程序进行检测的执行动作,例如在本发明实施例中,需要执行3个步骤(step),其中step1为执行构件器执行动作,step2为接口执行动作,step3为构建器执行动作,因此根据上述执行步骤生成对应的执行策略。
[0055] 需要说明的是,在本发明实施例中,技术人员在创建执行策略的过程中,也可以首先查看是否存在已存储的策略数据库,若存在策略数据库则可以查看在当前的策略数据库中是否存在与当前检测需求相匹配的执行策略,若存在则直接选择该执行策略以快速创建或生成执行策略,若不存在则通过手动输入的方式创建新的执行策略,从而进一步提高创建检测任务的速度,提高工作效率。
[0056] 在本发明实施例中,所述基于所述检测任务运行待检测程序,并获得对应的运行结果,包括:获取所述待检测程序的代码分支信息和检测并发数信息;基于所述检测任务提取出对应的任务执行步骤;按照所述任务执行步骤对所述待检测程序执行所述构建器执行动作并生成对应的构建器执行结果,和/或按照所述任务执行步骤对所述待检测程序执行所述接口执行动作,并生成对应的接口执行结果;基于所述构建器执行结果和/或所述接口执行结果生成对应的运行结果。
[0057] 进一步地,在本发明实施例中,所述执行所述构建器执行动作,包括:基于所述构建器执行动作调用对应的构建器对所述代码分支信息进行代码构建动作;所述执行所述接口执行动作,包括:基于所述接口执行动作调用对应的接口按照所述检测并发数信息执行对应的接口检测动作。
[0058] 在一种可能的实施方式中,在完成检测任务的创建后,技术人员通过创建的检测任务运行待检测程序,在本发明实施例中,通过创建的检测任务分别运行优化前检测任务和优化后检测任务,在运行待检测程序之前,首先获取待检测程序的代码分支信息和检测并发数信息,例如在本发明实施例中,待检测程序的代码分支信息为3,然后通过检测任务提取出对应的任务执行步骤,例如在本发明实施例中,该检测任务的任务执行步骤包括step1和step2,其中step1为构建器执行动作,step2为接口执行动作,在运行优化前待检测程序的过程中,按照上述执行步骤依次执行,在执行构建器执行动作时,通过调用与构建器执行动作对应的构建器对上述代码分支信息进行代码构件操作,并分别获得对应的构建器执行结果,在执行接口执行动作时,通过按照上述检测并发数信息向与接口执行动作对应的接口发送请求信息,并获得对应的接口执行结果,例如在本发明实施例中,通过运行step1获得对应的构建器执行结果,通过运行step2获得对应的接口执行结果,同时将对优化前检测程序的运行结果作为基准结果,在运行结果中包括每个执行步骤的响应时间等信息,在完成对优化前待检测程序的运行后,再按照上述执行步骤依次运行优化后待检测程序,并获得对应的执行结果,最后将上述执行结果汇总以获得对待检测程序的运行结果。
[0059] 在本发明实施例中,所述运行结果包括对所述优化前待检测程序的第一运行结果和对所述优化后待检测程序的第二运行结果,所述对所述运行结果进行分析,并生成对应的检测结果,包括:对所述第一运行结果和所述第二运行结果进行对比分析,并获得对应的对比结果;建立所述对比结果、所述检测任务、所述执行策略以及与所述接口执行动作对应的所述接口之间的关联关系;基于所述关联关系生成对应的检测报告,并对所述检测报告进行展示。
[0060] 在一种可能的实施方式中,在运行上述待检测程序后,依次获得与优化前待检测程序对应的第一检测结果以及与优化后待检测程序对应的第二检测结果,其中第一检测结果为基准结果,此时自动将上述检测结果存储至预设格式的表格中,并自动生成对优化前待检测程序和优化后待检测程序的运行对比结果,例如在本发明实施例中,将上述运行结果存储至预设格式的表格后如下表:
[0061]
[0062] 在生成上述检测报告后,将上述检测报告向技术人员进行展示,例如通过显示屏对上述检测报告进行显示,以向技术人员进行展示。
[0063] 在本发明实施例中,通过在线下以统一的检测环境对待检测程序进行运行,从而简单、快速地获取到优化前待检测程序和优化后待检测程序的优化性能的对比结果,而无需对实际的线上运行情况进行模拟后再对待检测程序的优化性能进行性能测试,从而大大降低了性能优化的优化效果检测过程中的检测成本,提高了技术人员的工作效率,提高了检测效率。
[0064] 同时,在完成上述检测后,还能够自动根据设置的统计表格以及分析方法对检测数据进行自动分析并生成对应的检测报告,而不需要由技术人员手动对检测数据进行分析并制作对应的检测报告,避免了人工计算带来的偏差,从而进一步提高了技术人员的工作效率和检测精确性,降低了技术人员对优化效果进行检测的繁琐度,提高了用户体验。
[0065] 下面结合附图对本发明实施例所提供的性能优化的优化效果的检测装置进行说明。
[0066] 请参见图3,基于同一发明构思,本发明实施例提供一种性能优化的优化效果的检测装置,所述检测装置包括:任务创建单元,用于创建检测任务;检测单元,用于基于所述检测任务运行待检测程序,并获得对应的运行结果,其中所述待检测程序包括优化前待检测程序和优化后待检测程序;分析单元,用于对所述运行结果进行分析,并生成对应的检测结果。
[0067] 在本发明实施例中,所述任务创建单元包括:第一判断模块,用于判断是否存储有任务管理数据列表;第一任务创建模块,用于在未存储有所述任务管理数据列表的情况下,获取任务创建操作以创建新的检测任务,基于新的检测任务生成新的任务管理数据列表;第二判断模块,用于在存储有所述任务管理数据列表的情况下,判断是否获取到任务选择操作;第二任务创建模块,用于在获取到所述任务选择操作的情况下,基于所述任务选择操作创建对应的检测任务;更新模块,用于在未获取到所述任务选择操作的情况下,获取任务创建操作以创建新的检测任务,并基于新的检测任务对所述任务数据列表进行更新。
[0068] 在本发明实施例中,所述创建新的检测任务,包括:获取任务创建元素信息;基于所述任务创建元素信息生成对应的执行动作;基于所述执行动作生成执行策略;基于所述执行策略创建所述检测任务。
[0069] 在本发明实施例中,所述获取任务创建元素信息,包括:判断是否存储有与所述任务创建元素信息对应的元素数据列表;在未存储有所述元素数据列表的情况下,获取编辑操作,并基于所述编辑操作获取对应的被选元素数据;在存储有所述元素数据列表的情况下,判断是否获取到选择操作;在获取到所述选择操作的情况下,获取在所述元素数据列表中与所述选择操作对应的被选元素数据;在未获取到所述选择操作的情况下,判断是否获取到编辑操作;在获取到所述编辑操作的情况下,基于所述编辑操作获取对应的被选元素数据;将所述被选元素数据作为任务创建元素信息,并基于所述被选元素数据对所述元素数据列表进行更新或生成新的元素数据列表。
[0070] 在本发明实施例中,所述任务创建元素信息包括环境数据信息、接口数据信息和构建器信息,所述基于所述任务创建元素信息生成对应的执行动作,包括:基于所述环境数据信息和所述构建器信息生成对应的构建器执行动作;基于所述环境数据信息和所述接口数据信息生成对应的接口执行动作;所述基于所述执行动作生成执行策略,包括:基于所述构建器执行动作和/或所述接口执行动作生成所述执行策略。
[0071] 在本发明实施例中,所述检测单元包括:获取模块,用于获取所述待检测程序的代码分支信息和检测并发数信息;提取模块,用于基于所述检测任务提取出对应的任务执行步骤;动作执行模块,用于按照所述任务执行步骤对所述待检测程序执行所述构建器执行动作并生成对应的构建器执行结果,和/或按照所述任务执行步骤对所述待检测程序执行所述接口执行动作,并生成对应的接口执行结果;检测模块,用于基于所述构建器执行结果和/或所述接口执行结果生成对应的运行结果。
[0072] 在本发明实施例中,所述执行所述构建器执行动作,包括:基于所述构建器执行动作调用对应的构建器对所述代码分支信息进行代码构建动作;所述执行所述接口执行动作,包括:基于所述接口执行动作调用对应的接口按照所述检测并发数信息执行对应的接口检测动作。
[0073] 在本发明实施例中,所述运行结果包括对所述优化前待检测程序的第一运行结果和对所述优化后待检测程序的第二运行结果,所述分析单元包括:分析模块,用于对所述第一运行结果和所述第二运行结果进行对比分析,并获得对应的对比结果;关联模块,用于建立所述对比结果、所述检测任务、所述执行策略以及与所述接口执行动作对应的所述接口之间的关联关系;报告模块,用于基于所述关联关系生成对应的检测报告,并对所述检测报告进行展示。
[0074] 进一步地,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明所述的方法。
[0075] 进一步地,本发明实施例还提供一种服务器,包括:处理器;以及存储设备,存储有计算机程序指令,与所述处理器连接,所述计算机程序指令在所述处理器中加载并执行本发明所述的方法。
[0076] 以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
[0077] 另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
[0078] 本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0079] 此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

当前第1页 第1页 第2页 第3页