CN108287781A - 一种内存占用监控方法及装置、系统 - Google Patents

一种内存占用监控方法及装置、系统 Download PDF

Info

Publication number
CN108287781A
CN108287781A CN201710018777.4A CN201710018777A CN108287781A CN 108287781 A CN108287781 A CN 108287781A CN 201710018777 A CN201710018777 A CN 201710018777A CN 108287781 A CN108287781 A CN 108287781A
Authority
CN
China
Prior art keywords
test
program
navigation mechanism
target
target pages
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.)
Granted
Application number
CN201710018777.4A
Other languages
English (en)
Other versions
CN108287781B (zh
Inventor
王伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yayue Technology Co ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710018777.4A priority Critical patent/CN108287781B/zh
Publication of CN108287781A publication Critical patent/CN108287781A/zh
Application granted granted Critical
Publication of CN108287781B publication Critical patent/CN108287781B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明实施例公开了一种内存占用监控方法,所述方法包括:获取到对浏览组件进行测试的测试请求;根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。本发明实施例还公开了一种内存占用监控装置和系统。

Description

一种内存占用监控方法及装置、系统
技术领域
本发明涉及测试技术,尤其涉及一种内存占用监控方法及装置、系统。
背景技术
现有,浏览组件(如WebView)测试过程均是通过第三方测试框架,如UIAutomator、MonkeyRunner等,并利用针对浏览组件封装好的测试工具,如demo进行页面加载,进而通过监控应用进程所占用的内存数据来确定浏览组件的性能;这里,由于通过第三方测试框架测试内存性能的测试为黑盒测试,无法得知被测项目细节,只能通过demo封装完成的接口来实现测试过程,所以,现有利用第三方测试框架的测试过程对demo强依赖,可侧项目局限性较大;而且,由于内存占用监控方法的限制,现有测试过程只能监控得到连续加载网页的内存变化数据,不能独立分析单个网页的内存占用情况。
发明内容
为解决现有存在的技术问题,本发明实施例提供了一种内存占用监控方法及装置、系统,能至少解决现有技术中存在的上述问题。
本发明实施例的技术方案是这样实现的:
本发明实施例第一方面提供了一种内存占用监控方法,所述方法包括:
获取到对浏览组件进行测试的测试请求;
根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
上述方案中,所述测试请求中携带有表征目标测试程序的测试参数;对应地,所述方法还包括:
解析所述测试请求,得到测试参数;
基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,其中,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序为所述第一程序或第二程序。
上述方案中,所述方法还包括:
获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;
基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。
上述方案中,所述监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,包括:
监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,
监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
上述方案中,所述方法还包括:
控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面;
利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。
本发明实施例第二方面提供了一种内存占用监控装置,所述装置包括:
获取单元,用于获取到对浏览组件进行测试的测试请求;
处理单元,用于根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
监控单元,用于监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
上述方案中,所述测试请求中携带有表征目标测试程序的测试参数;对应地,
所述处理单元,还用于解析所述测试请求,得到测试参数;基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,其中,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序为所述第一程序或第二程序。
上述方案中,所述监控单元,还用于获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;
所述处理单元,还用于基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。
上述方案中,所述监控单元,还用于监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,
监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
上述方案中,所述处理单元,还用于控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面;
所述监控单元,还用于利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。
本发明实施例第三方面提供了一种内存占用监控系统,所述系统包括:终端和服务器;其中,
所述服务器,用于生成对所述终端安装的浏览组件进行测试的测试请求;
所述终端,用于基于所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
对应地,所述服务器,还用于监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
本发明实施例所述的内存占用监控方法及装置、系统,能够在一个进程中连续加载多个页面,或者在一个进程中仅加载一个页面,如此,本发明实施例能够查看基于一个进程在连续页面加载过程中的内存变化趋势的同时,还能够查看基于一个进程在仅加载一个页面过程中的内存变化趋势,因此,弥补了现有不能独立分析单个网页的内存占用情况的空白。
附图说明
图1为本发明实施例一内存占用监控方法的实现流程示意图;
图2为本发明实施例独立多进程测试过程的实现流程示意图;
图3为本发明实施例单进程测试过程的实现流程示意图;
图4为本发明实施例内存泄漏测试过程的实现流程示意图;
图5为本发明实施例内存占用监控方法在一具体应用中的整体实现流程示意图;
图6为本发明实施例内存占用监控方法在一具体应用中的详细实现流程示意图;
图7为本发明实施例内存占用监控装置的组成结构示意图;
图8为本发明实施例内存占用监控装置的硬件结构示意图;
图9为本发明实施例内存占用监控方法中服务器与终端的交互流程示意图;
图10为本发明实施例内存占用监控系统的组成结构示意图。
具体实施方式
为了能够更加详尽地了解本发明的特点与技术内容,下面结合附图对本发明的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。
实施例一
本实施例提供了一种内存占用监控方法,具体地,本实施例采用了白盒测试方案,即本实施例中用于对浏览组件的内存性能进行分析的目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;进一步地,由于本实施例采用的白盒测试可以看到源代码,所以无需第三方工具脚本编写、分辨率适配等流程。同时,本实施例能够在一个进程中连续加载多个页面,或者在一个进程中仅加载一个页面,如此,本发明实施例所述方法能够查看基于一个进程在连续页面加载过程中的内存变化趋势的同时,还能够查看基于一个进程在仅加载一个页面过程中的内存变化趋势,因此,弥补了现有不能独立分析单个网页的内存占用情况的空白。具体地,
图1为本发明实施例一内存占用监控方法的实现流程示意图;所述方法应用于内存占用监控装置中;如图1所示,所述方法包括:
步骤101:获取到对浏览组件进行测试的测试请求;
本实施例中,所述测试请求中携带有表征目标测试程序的测试参数;对应地,所述内存占用监控装置还需要解析所述测试请求,得到测试参数,进而基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,这里,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码,也就是说,测试人员能够获知目标测试程序的细节,并能够及时对目标测试程序进行修改。所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序可以具体为所述第一程序或第二程序,也就是说,所述内存占用监控装置基于所述测试参数从所述预设目标测试程序列表中选取出第一程序,并将所述第一程序作为所述目标测试程序,或者,基于所述测试参数从所述预设目标测试程序列表中选取出第二程序,并将所述第二程序作为所述目标测试程序。
步骤102:根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
例如,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面,或加载一个目标页面;
步骤103:监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
在一具体实施例中,当所述目标测试程序具体为第一程序时,即支持所述第一进程在一次测试过程中连续加载多个页面,此情况可称为单进程测试过程,通过单进程测试过程能够查看连续页面加载过程中内存变化趋势;进一步地,当所述目标测试程序具体为第二程序时,即支持所述第一进程在一次测试过程中仅加载一个页面,此情况可称为独立多进程测试过程,即通过独立的多个进程能够查看到每一进程在加载一个网页时的内存变化趋势,进而分析得到单个页面所占用的内存,为确定出网页内存性能优化的可优化点奠定了基础。
具体地,所述目标测试程序具体为第一程序,即独立多进程测试过程的具体步骤包括:
控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面,利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,以便于利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。这里,在实际应用中,不同的第一进程加载的目标页面相同或者不相同。
在一具体实施例中,监控所述第一进程得到内存信息的具体过程包括:
方式一,当目标测试程序具体为第一程序,此时,监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,
方式二,当目标测试程序具体为第二程序,此时,监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
以下给出一具体应用场景对本发明实施例所述的独立多进程测试过程和单进程测试过程进行详细说明;具体地,
第一、独立多进程测试过程,如图2所示,具体步骤如下:
步骤201:启动多进程demo;
步骤202:启动统计进程(也即监控进程),该统计进程用于管理多个测试进程(也即第一进程);
步骤203:判断是否达到最大测试次数,若达到最大测试次数,则执行步骤208;否则,执行步骤204;
步骤204:启动每一独立测试进程,利用WebView从待测统一资源定位符(URL,Uniform Resource Locator)列表中读取URL信息,并且使用webview.loadURL加载列表中的URL;
步骤205:检测每一测试进程是否监听到onPageFinished事件,当监听到onPageFinished事件时,执行步骤206;否则,继续检测每一测试进程是否监听到onPageFinished事件;
步骤206:确定URL对应的页面加载完成,随后,通知统计进程,如利用进程间通信(IPC,Inter-Process Communication)的方式通知统计进程,告知统计进程加载URL对应的页面所占用的内存信息;
这里,在实际应用中,当监听到onPageFinished事件时,还需要等待一预设时间,如1000毫秒,以等待页面渲染完成,随后,再利用IPC的方式通知统计进程,并且在等待一预设时间,如100ms后结束该测试进程。这里,每一测试进程按照步骤204至206的步骤运行,以便于完成独立多进程测试过程。
步骤207:统计进程监听到进程间IPC事件,进行数据统计处理,进而分析得到单个网页的内存占用情况;
这里,在实际应用中,统计进程进行数据统计处理后,将统计得到的数据保存到sdcard,且保存为CSV格式。
步骤208:测试终止。
第二、单进程测试过程,如图3所示,具体步骤如下:
步骤301:启动单进程测试demo;
步骤302:判断是否达到最大测试次数,若达到最大测试次数,则执行步骤306;否则,执行步骤303;
步骤303:启动测试进程,利用WebView从待测URL列表中读取URL信息,并且使用webview.loadURL加载列表中的URL;
步骤304:检测该测试进程是否监听到onPageFinished事件,当监听到onPageFinished事件时,执行步骤305;继续检测该测试进程是否监听到onPageFinished事件;
步骤305:确定连续加载多页面加载过程完成,得到连续加载多页面时的内存占用数据,并将内存占用数据写入文件中;返回步骤302重复执行测试,以便于利用多次测试得到的内存数据确定出连续加载多个网页的内存占用情况;
这里,在实际应用中,当监听到onPageFinished事件时,还需要等待一预设时间,如1000毫秒,以等待页面渲染完成,将页面渲染完成后所得到的内存占用数据作为连续加载多页面时的内存占用数据。
步骤306:测试终止。
这样,本发明实施例所述的方法,能够在一个进程中连续加载多个页面,或者在一个进程中仅加载一个页面,如此,本发明实施例所述方法能够查看基于一个进程在连续页面加载过程中的内存变化趋势的同时,还能够查看基于一个进程在仅加载一个页面过程中的内存变化趋势,因此,弥补了现有不能独立分析单个网页的内存占用情况的空白。
而且,由于本发明实施例中用于对浏览组件的内存性能进行分析的目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码,即本发明实施例采用的是白盒测试,可以看到源代码,对,所以无需第三方工具脚本编写、分辨率适配等流程,提升了测试灵活性,扩展了可测试范围。
实施例二
基于实施例一所述的方法,本实施例中,所述内存占用监控装置还可以利用目标测试程序进行内存泄漏测试,具体地,获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。也就是说,本实施例所述的方法,不仅能够在单进程测试过程中查看连续页面加载过程中内存变化趋势,还能够根据单进程测试过程中连续页面加载过程中内存变化趋势去判断是否存在内存泄漏的情况,如此,扩展了可测试范围。
以下给出一具体应用场景对本发明实施例内存泄漏测试过程进行详细说明;具体地,如图4所示,具体步骤包括:
步骤401:启动内存泄露demo;
步骤402:启动数据统计Activity,该数据统计Activity用于监控测试进程所得到的测试结果,并对测试结果进行分析管理;
步骤403:判断是否达到最大测试次数,若达到最大测试次数,则执行步骤408;否则,执行步骤404;
步骤404:调用startActivityForResult方法启动WebView Activity,并利用WebView加载预先设置好的URL;
步骤405:检测是否监听到onPageFinished事件,当监听到onPageFinished事件时,执行步骤406;否则,继续检测是否监听到onPageFinished事件;
步骤406:确定URL对应的页面加载完成,调用setResult方法并尝试结束本进程,向数据统计Activity反馈内存性能数据;
这里,在实际应用中,当监听到onPageFinished事件时,还需要等待一预设时间,如1000毫秒,以等待页面渲染完成,随后,再等待一预设时间,如100ms后结束该进程。
步骤407:数据统计Activity分析内存性能数据,并分析是否发生内存泄漏情况;
步骤408:测试终止。
以下结合图5和图6所给出的具体应用实例对本发明实施例做进一步详细说明;具体地,如图5所示,所述内存占用监控装置可以具体使用Instrumention获取测试对象,如获取浏览组件,并通过参数来判断使用哪种测试方式对测试对象进行测试,启动数据管理器,从URL列表文件中读取需要测试的URL信息,并使用webview.loadURL加载URL列表文件中的URL,监听是否存在onPageFinished事件,当监听到onPageFinished事件时,通过系统API读取当前进程内存占用情况,并保存当前进程所对应的内存占用情况,以便于分析得出测试对象的内存占用情况。
进一步地,如图6所示,所述内存占用监控装置可以具体通过adb instrument启动测试进程,并通过输入参数来选择具体测试过程,如进行单进程内存测试、或多进程内存测试还是内存泄漏测试,进而完成测试过程;具体地,如图6所示,
若进行单进程内存测试,则使用单进程内存测试用例;具体步骤如下:
步骤11:启动单内存测试demo;
步骤12:判断是否达到最大测试次数,若达到最大测试次数,则测试终止;否则,执行步骤13;
步骤13:启动测试进程,利用WebView从待测URL列表中读取URL信息,并且使用webview.loadURL加载列表中的URL;
步骤14:检测该测试进程是否监听到onPageFinished事件,当监听到onPageFinished的事件时,确定连续加载多页面加载过程完成,得到连续加载多页面时的内存占用数据,并将内存占用数据写入文件中;返回步骤12,重复执行测试,以便于利用多次测试得到的内存数据确定出连续加载多个网页的内存占用情况。这里,在实际应用中,当监听到onPageFinished事件时,还需要等待一预设时间,如1000毫秒,以等待页面渲染完成,将页面渲染完成后所得到的内存占用数据作为连续加载多页面时的内存占用数据。
若进行独立多进程内存测试,使用独立多进程测试用例进行测试;具体步骤如下:
步骤21:启动多进程demo,启动统计进程,该统计进程用于管理多个测试进程;
步骤22:判断是否达到最大测试次数,若达到最大测试次数,则执行步骤26;否则,执行步骤23;
步骤23:启动每一独立测试进程,利用WebView从待测URL列表中读取URL信息,并使用webview.loadURL加载列表中的URL;
步骤24:检测每一测试进程是否监听到onPageFinished事件,当监听到onPageFinished事件时,等待1000毫秒页面渲染完成之后截图保存到本地,并且通过Android进程之间IPC的方式通知统计进程,告知统计进程加载URL对应的页面所占用的内存信息,并且等待100ms结束该测试进程;
步骤25:统计进程监听到进程间IPC事件,进行数据统计处理,进而分析得到单个网页的内存占用情况;这里,在实际应用中,统计进程进行数据统计处理后,将统计得到的内存性能数据保存到sdcard,且保存为CSV格式。
步骤26:当达到最大次数之后,测试终止。
若选择内存测试泄漏测试方案之后,启动内存测试泄漏测试方案;具体步骤如下:
步骤31:启动内存泄露demo;启动数据统计Activity,该数据统计Activity用于监控测试结果并且进行管理;
步骤32:判断是否达到最大测试次数,若达到最大测试次数,则测试终止,否则调用startActivityForResult方法启动Web Activity;
步骤33:利用WebView加载预先设置好的URL;
步骤34:检测是否监听到onPageFinished事件,当监听到onPageFinished事件之后调用setResult方法并尝试结束本进程,向数据统计Activity反馈内存性能数据;这里,在实际应用中,当监听到onPageFinished事件时,还需要等待一预设时间,如1000毫秒,以等待页面渲染完成,随后,再等待一预设时间,如100ms后结束该进程。
步骤35:数据统计Activity分析内存性能数据,并分析是否发生内存泄漏情况,进行输出。
这样,本发明实施例所述的方法,能够在一个进程中连续加载多个页面,或者在一个进程中仅加载一个页面,如此,本发明实施例所述方法能够查看基于一个进程在连续页面加载过程中的内存变化趋势的同时,还能够查看基于一个进程在仅加载一个页面过程中的内存变化趋势,因此,弥补了现有不能独立分析单个网页的内存占用情况的空白。而且,本发明实施例所述的方法不仅能够在单进程测试过程中查看连续页面加载过程中内存变化趋势,还能够根据单进程测试过程中连续页面加载过程中内存变化趋势去判断是否存在内存泄漏的情况,如此,扩展了可测试范围。
进一步地,由于本发明实施例中用于对浏览组件的内存性能进行分析的目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码,即本发明实施例采用的是白盒测试,可以看到源代码,对,所以无需第三方工具脚本编写、分辨率适配等流程,提升了测试灵活性,扩展了可测试范围。
实施例三
本实施例提供了一种内存占用监控装置,如图7所示,所述装置包括:
获取单元71,用于获取到对浏览组件进行测试的测试请求;
处理单元72,用于根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
监控单元73,用于监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
在一实施例中,所述测试请求中携带有表征目标测试程序的测试参数;对应地,
所述处理单元72,还用于解析所述测试请求,得到测试参数;基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,其中,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序为所述第一程序或第二程序。
在另一实施例中,所述监控单元73,还用于获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;
所述处理单元72,还用于基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。
在另一实施例中,所述监控单元73,还用于监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
在另一实施例中,所述处理单元72,还用于控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面;
所述监控单元73,还用于利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。
这里需要指出的是:以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解,为节约篇幅,因此不再赘述。
进一步地,本实施例基于上述装置实施例提供了一个具体的硬件,如图8所示,所述装置包括处理器81、存储器82、发射器83、以及接收器84,其中,所述处理器81、存储器82、发射器83、以及接收器84均通过总线连接。所述处理器81可为微处理器、中央处理器、数字信号处理器或可编程逻辑阵列等具有处理功能的电子元器件。所述存储器中存储有计算机可执行代码。这里,所述处理器81执行所述计算机可执行代码时,至少能实现以下功能:获取到对浏览组件进行测试的测试请求;根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面,或一个目标页面;监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
实施例四
本实施例提供了一种内存占用监控系统;这里,图9为本发明实施例内存占用监控方法中服务器与终端的交互流程示意图,图10为本发明实施例内存占用监控系统的组成结构示意图;具体地,如图9和图10所示,所述系统包括:终端1002和服务器1001;其中,
所述服务器1001,用于生成对所述终端安装的浏览组件进行测试的测试请求;
所述终端1002,用于基于所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
对应地,所述服务器1001,还用于监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
也就是说,在实际应用中,所述服务器可以控制终端完成浏览组件的内存性能的测试过程。换言之,以上实施例三所述的内存占用监控装置中的一部分功能在服务器中实现,另一部分功能在终端中实现,以此来通过服务器和终端来共同完成本发明实施例所述的内存占用监控方法。
进一步地,在一具体实施例中,所述终端1002,还具体用于解析所述测试请求,得到测试参数;基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,其中,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序为所述第一程序或第二程序。
在另一具体实施例中,所述服务器1001,还用于获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。
在另一具体实施例中,所述服务器1001,还用于监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
在另一具体实施例中,所述终端1002,还用于控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面;
对应地,所述服务器1001,还用于利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。
这里需要指出的是:以上系统实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本发明系统实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解,为节约篇幅,因此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (11)

1.一种内存占用监控方法,其特征在于,所述方法包括:
获取到对浏览组件进行测试的测试请求;
根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
2.根据权利要求1所述的方法,其特征在于,所述测试请求中携带有表征目标测试程序的测试参数;对应地,所述方法还包括:
解析所述测试请求,得到测试参数;
基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,其中,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序为所述第一程序或第二程序。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;
基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。
4.根据权利要求1或2所述的方法,其特征在于,所述监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,包括:
监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,
监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面;
利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。
6.一种内存占用监控装置,其特征在于,所述装置包括:
获取单元,用于获取到对浏览组件进行测试的测试请求;
处理单元,用于根据所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
监控单元,用于监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
7.根据权利要求6所述的装置,其特征在于,所述测试请求中携带有表征目标测试程序的测试参数;对应地,
所述处理单元,还用于解析所述测试请求,得到测试参数;基于所述测试参数从预设目标测试程序列表中选取出目标测试程序,其中,所述目标测试程序能够实时响应修改指令,并基于所述修改指令调整自身对应的源代码;所述预设目标测试程序列表至少包括第一程序和第二程序;所述第一程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载至少两个目标页面;所述第二程序用于控制所述第一进程在一次测试过程中利用所述浏览组件连续加载一个目标页面;对应地,所述目标测试程序为所述第一程序或第二程序。
8.根据权利要求6或7所述的装置,其特征在于,所述监控单元,还用于获取所述第一进程在至少两次测试过程的每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息;
所述处理单元,还用于基于每次测试过程中利用所述浏览组件连续加载至少两个目标页面所占用的内存信息,确定出所述浏览组件在连续加载至少两个目标页面时的内存占用状态是否满足预设规则。
9.根据权利要求6或7所述的装置,其特征在于,所述监控单元,还用于监控所述第一进程,获取所述第一进程利用所述浏览组件连续加载至少两个目标页面的第一加载状态信息,基于所述第一加载状态信息确定出连续加载所述至少两个目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息;或者,
监控所述第一进程,获取所述第一进程利用所述浏览组件加载一个所述目标页面的第二加载状态信息,基于所述第二加载状态信息确定出加载一个所述目标页面的加载过程完成时,获取所述第一进程在运行所述目标测试程序时所占用的内存信息。
10.根据权利要求6所述的装置,其特征在于,所述处理单元,还用于控制至少两个所述第一进程运行所述测试请求指示的目标测试程序,并基于所述目标测试程序控制每一所述第一进程在一次测试过程中利用所述浏览组件加载一个所述目标页面;
所述监控单元,还用于利用监控进程监控所述至少两个第一进程,并控制每一所述第一进程将在一次测试过程中利用所述浏览组件加载一个所述目标页面时所占用的内存信息传输至所述监控进程,利用所述监控进程获取到的所有所述第一进程在加载一个所述目标页面时所占用的内存信息统计得出所述浏览组件在加载一个所述目标页面时所占用的内存信息。
11.一种内存占用监控系统,其特征在于,所述系统包括:终端和服务器;其中,
所述服务器,用于生成对所述终端安装的浏览组件进行测试的测试请求;
所述终端,用于基于所述测试请求在第一进程中运行所述测试请求指示的目标测试程序,基于所述目标测试程序控制所述第一进程在一次测试过程中利用所述浏览组件加载至少一个目标页面;
对应地,所述服务器,还用于监控所述第一进程,并获取所述第一进程在运行所述目标测试程序时所占用的内存信息,根据内存信息确定出所述浏览组件在加载目标页面时的内存占用状态。
CN201710018777.4A 2017-01-10 2017-01-10 一种内存占用监控方法及装置、系统 Active CN108287781B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710018777.4A CN108287781B (zh) 2017-01-10 2017-01-10 一种内存占用监控方法及装置、系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710018777.4A CN108287781B (zh) 2017-01-10 2017-01-10 一种内存占用监控方法及装置、系统

Publications (2)

Publication Number Publication Date
CN108287781A true CN108287781A (zh) 2018-07-17
CN108287781B CN108287781B (zh) 2022-08-26

Family

ID=62831457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710018777.4A Active CN108287781B (zh) 2017-01-10 2017-01-10 一种内存占用监控方法及装置、系统

Country Status (1)

Country Link
CN (1) CN108287781B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110968516A (zh) * 2019-12-04 2020-04-07 北京小米移动软件有限公司 应用内存测试方法、装置及计算机存储介质
CN112131498A (zh) * 2020-09-23 2020-12-25 北京达佳互联信息技术有限公司 页面加载方法、装置、电子设备及存储介质
CN112328446A (zh) * 2020-10-28 2021-02-05 成都安易迅科技有限公司 程序进程的监控方法、装置及计算机设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064642A1 (en) * 2002-10-01 2004-04-01 James Roskind Automatic browser web cache resizing system
US20090271866A1 (en) * 2008-04-23 2009-10-29 Lloyd Liske System and Method for Protecting Against Malware Utilizing Key Loggers
CN101777065A (zh) * 2009-12-31 2010-07-14 优视科技有限公司 一种用于移动通讯设备终端的多页面浏览器及其应用方法
CN101814049A (zh) * 2010-03-23 2010-08-25 北京大学 一种内存泄漏探测方法
CN103246739A (zh) * 2013-05-16 2013-08-14 百度在线网络技术(北京)有限公司 多WebView的网页浏览控制方法及浏览器
CN104461899A (zh) * 2014-12-19 2015-03-25 北京奇虎科技有限公司 测试过程中分析资源消耗量的方法、测试终端及系统
CN105260294A (zh) * 2015-11-16 2016-01-20 曙光信息产业(北京)有限公司 一种应用程序占用内存的监控方法及装置
CN106294166A (zh) * 2016-08-16 2017-01-04 腾讯科技(深圳)有限公司 一种游戏数据监控方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064642A1 (en) * 2002-10-01 2004-04-01 James Roskind Automatic browser web cache resizing system
US20090271866A1 (en) * 2008-04-23 2009-10-29 Lloyd Liske System and Method for Protecting Against Malware Utilizing Key Loggers
CN101777065A (zh) * 2009-12-31 2010-07-14 优视科技有限公司 一种用于移动通讯设备终端的多页面浏览器及其应用方法
CN101814049A (zh) * 2010-03-23 2010-08-25 北京大学 一种内存泄漏探测方法
CN103246739A (zh) * 2013-05-16 2013-08-14 百度在线网络技术(北京)有限公司 多WebView的网页浏览控制方法及浏览器
CN104461899A (zh) * 2014-12-19 2015-03-25 北京奇虎科技有限公司 测试过程中分析资源消耗量的方法、测试终端及系统
CN105260294A (zh) * 2015-11-16 2016-01-20 曙光信息产业(北京)有限公司 一种应用程序占用内存的监控方法及装置
CN106294166A (zh) * 2016-08-16 2017-01-04 腾讯科技(深圳)有限公司 一种游戏数据监控方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张蕊等: "基于B/S结构的嵌入式系统测试平台及其应用", 《计算机辅助设计与图形学学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110968516A (zh) * 2019-12-04 2020-04-07 北京小米移动软件有限公司 应用内存测试方法、装置及计算机存储介质
CN112131498A (zh) * 2020-09-23 2020-12-25 北京达佳互联信息技术有限公司 页面加载方法、装置、电子设备及存储介质
CN112328446A (zh) * 2020-10-28 2021-02-05 成都安易迅科技有限公司 程序进程的监控方法、装置及计算机设备
CN112328446B (zh) * 2020-10-28 2024-04-30 成都安易迅科技有限公司 程序进程的监控方法、装置及计算机设备

Also Published As

Publication number Publication date
CN108287781B (zh) 2022-08-26

Similar Documents

Publication Publication Date Title
US8381184B2 (en) Dynamic test coverage
US8996921B2 (en) Indicating coverage of Web application testing
CN107908540A (zh) 测试用例创建方法、装置、计算机设备及介质
CN108287781A (zh) 一种内存占用监控方法及装置、系统
CN102636741A (zh) 电路板测试方法和系统
CN101176073A (zh) 不同服务器出现故障时调整服务器配置参数的装置和方法
CN108459850B (zh) 生成测试脚本的方法、装置及系统
CN106815142A (zh) 一种软件测试方法和系统
CN107145440A (zh) 应用程序测试方法、装置和计算机设备
US20080250276A1 (en) Memory growth detection
CN111813699B (zh) 基于智能电表的数据路由测试方法、装置和计算机设备
CN109633351A (zh) 智能it运维故障定位方法、装置、设备及可读存储介质
CN108234246A (zh) 一种多向测试服务器网络性能的方法及系统
Panigrahi et al. An approach to prioritize the regression test cases of object-oriented programs
CN114168471A (zh) 测试方法、装置、电子设备及存储介质
CN107360036A (zh) 一种网络故障定位方法、终端和服务器
CN106407099B (zh) 一种测试方法和客户端
CN112650656A (zh) 性能监控方法、装置、设备、服务器及存储介质
CN108875368A (zh) 一种安全检测方法、装置及系统
CN112000989A (zh) 一种基于数据库同步的数据脱敏装置、系统及方法
US7150007B2 (en) Universal routine for reviewing and exercising software objects
US7254508B2 (en) Site loops
CN113965510B (zh) 一种流量染色方法和系统
US20200213203A1 (en) Dynamic network health monitoring using predictive functions
CN103902304A (zh) 一种用于评测Web应用的方法、装置和系统

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20221123

Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518133

Patentee after: Shenzhen Yayue Technology Co.,Ltd.

Address before: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TR01 Transfer of patent right