应用程序性能测试方法及装置的制造方法_4

文档序号:9787312阅读:来源:国知局
单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
[0071]本发明公开了:
[0072]Al、一种应用程序性能测试方法,包括:
[0073]解析得到应用程序中所有需要测试的函数和/或线程;
[0074]在所述应用程序启动过程中,接管所述函数和/或线程,记录所述函数和/或线程的执行时间和调用次数;
[0075]根据所述函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序,以供按照排序结果进行应用程序的调试。
[0076]A2、根据Al所述的方法,所述解析得到应用程序中所有需要测试的函数进一步包括:解析得到应用程序中涉及操作系统框架的组件的函数。
[0077]A3、根据Al所述的方法,所述解析得到应用程序中所有需要测试的函数进一步包括:解析得到应用程序中由JAVA语言派生出来的函数。
[0078]A4、根据Al所述的方法,所述解析得到应用程序中所有需要测试的函数进一步包括:解析得到应用程序中自定义函数。
[0079]A5、根据Al所述的方法,所述解析得到应用程序中所有需要测试的线程进一步包括:解析得到应用程序中继承线程基类的线程,或者,解析得到应用程序中实现runable接口的线程。
[0080]A6、根据A5所述的方法,所述接管线程,记录线程的执行时间和调用次数进一步包括:接管线程的run方法,记录线程的执行时间和调用次数。
[0081]A7、根据A1-A6任一项所述的方法,所述根据函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序进一步包括:
[0082]根据函数和/或线程的单次调用的执行时间和调用次数,计算所述函数和/或线程的总执行时间;
[0083]根据所述函数和/或线程的总执行时间计算单次调用的平均执行时间;
[0084]根据所述函数和/或线程的总执行时间和/或单次调用的平均执行时间,对所有被测试的函数和/或线程进行排序。
[0085]B8、一种应用程序性能测试装置,包括:
[0086]解析模块,适于解析得到应用程序中所有需要测试的函数和/或线程;
[0087]接管模块,适于在所述应用程序启动过程中,接管所述函数和/或线程,记录所述函数和/或线程的执行时间和调用次数;
[0088]排序模块,适于根据所述函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序,以供按照排序结果进行应用程序的调试。
[0089]B9、根据B8所述的装置,所述解析模块进一步适于:解析得到应用程序中涉及操作系统框架的组件的函数。
[0090]B10、根据B8所述的装置,所述解析模块进一步适于:解析得到应用程序中由JAVA语言派生出来的函数。
[0091]B11、根据B8所述的装置,所述解析模块进一步适于:解析得到应用程序中自定义函数。
[0092]B12、根据B8所述的装置,所述解析模块进一步适于:解析得到应用程序中继承线程基类的线程,或者,解析得到应用程序中实现runable接口的线程。
[0093]B13、根据B12所述的装置,所述接管模块进一步适于:对于线程,接管线程的run方法,记录线程的执行时间和调用次数。
[0094]BI 4、根据B8-B13所述的装置,所述排序模块进一步包括:
[0095]第一计算单元,适于根据函数和/或线程的单次调用的执行时间和调用次数,计算所述函数和/或线程的总执行时间;
[0096]第二计算单元,适于根据所述函数和/或线程的总执行时间计算单次调用的平均执行时间;
[0097]排序单元,适于根据所述函数和/或线程的总执行时间和/或单次调用的平均执行时间,对所有被测试的函数和/或线程进行排序。
【主权项】
1.一种应用程序性能测试方法,包括: 解析得到应用程序中所有需要测试的函数和/或线程; 在所述应用程序启动过程中,接管所述函数和/或线程,记录所述函数和/或线程的执行时间和调用次数; 根据所述函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序,以供按照排序结果进行应用程序的调试。2.根据权利要求1所述的方法,所述解析得到应用程序中所有需要测试的函数进一步包括:解析得到应用程序中涉及操作系统框架的组件的函数。3.根据权利要求1所述的方法,所述解析得到应用程序中所有需要测试的函数进一步包括:解析得到应用程序中由JAVA语言派生出来的函数。4.根据权利要求1所述的方法,所述解析得到应用程序中所有需要测试的函数进一步包括:解析得到应用程序中自定义函数。5.根据权利要求1所述的方法,所述解析得到应用程序中所有需要测试的线程进一步包括:解析得到应用程序中继承线程基类的线程,或者,解析得到应用程序中实现runable接口的线程。6.根据权利要求5所述的方法,所述接管线程,记录线程的执行时间和调用次数进一步包括:接管线程的run方法,记录线程的执行时间和调用次数。7.根据权利要求1-6任一项所述的方法,所述根据函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序进一步包括: 根据函数和/或线程的单次调用的执行时间和调用次数,计算所述函数和/或线程的总执行时间; 根据所述函数和/或线程的总执行时间计算单次调用的平均执行时间; 根据所述函数和/或线程的总执行时间和/或单次调用的平均执行时间,对所有被测试的函数和/或线程进行排序。8.一种应用程序性能测试装置,包括: 解析模块,适于解析得到应用程序中所有需要测试的函数和/或线程; 接管模块,适于在所述应用程序启动过程中,接管所述函数和/或线程,记录所述函数和/或线程的执行时间和调用次数; 排序模块,适于根据所述函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序,以供按照排序结果进行应用程序的调试。9.根据权利要求8所述的装置,所述解析模块进一步适于:解析得到应用程序中涉及操作系统框架的组件的函数。10.根据权利要求8所述的装置,所述解析模块进一步适于:解析得到应用程序中由JAVA语言派生出来的函数。
【专利摘要】本发明公开了一种应用程序性能测试方法及装置。其中方法包括:解析得到应用程序中所有需要测试的函数和/或线程;在所述应用程序启动过程中,接管所述函数和/或线程,记录所述函数和/或线程的执行时间和调用次数;根据所述函数和/或线程的执行时间和调用次数,对所有被测试的函数和/或线程进行排序,以供按照排序结果进行应用程序的调试。本发明深入到应用程序内部,对应用程序内部的函数和/或线程进行测试,测试出哪个函数和/或线程的执行时间最长,调用次数最多。根据测试结果,开发人员可有针对性的对这些函数和/或线程进行调试,以解决应用程序启动时间过长的技术问题。
【IPC分类】G06F11/36
【公开号】CN105550104
【申请号】CN201510897242
【发明人】冯刚
【申请人】北京奇虎科技有限公司, 奇智软件(北京)有限公司
【公开日】2016年5月4日
【申请日】2015年12月8日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1