一种测试方法及装置的制造方法_3

文档序号:9865393阅读:来源:国知局
所述第二计时器的语句获取所述第二时间。
[0083]函数名获取模块503,用于在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名。
[0084]在一个实例中,所述获取函数名指令可直接写入所述函数的结束处。也可以如所说第一计时器与第二计时器通过调用函数语句调用所述获取函数名指令。
[0085]第一计算模块504,用于根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间。
[0086]由于所述第一时间为函数运行的起始时间,所述第二时间为所述函数运行的结束时间。则可以知道,第一时间与第二时间之间的时间段则为调用所述函数花费时间。
[0087]存储模块505,用于将所述调用时间与所述函数名对应存储。
[0088]进一步地,将所述应用程序的函数的调用时间存储至日志中所述函数名对应位置。
[0089]所述日志可用于记录硬件、软件及系统问题的信息,也可以监视系统发生的事件。用户可用它来检查错误发生的原因等。
[0090]根据本实施例的装置,通过在函数起始位置与结束为止加载计时器获取执行时的时间,可以自动计算得到所述函数的调用时间,提高性能检测的效率,减少测试时间。
[0091]第六实施例
[0092]本实施例提供一种测试装置,本实施例与第六实施例类似,其不同之处在于,如图7所示,本实施例的装置还包括:
[0093]计数器加载模块601,用于根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数。
[0094]所述计数器用于记录所属函数被调用的次数。可以知道的是,若所述函数被调用过,则存在已经赋值的所述计数器。在一个实例中,若所述函数首次被调用,可以在所述日志中新建所述函数的计数器。例如,简单地,可以直接用阿拉伯数字存储计数器的值。
[0095]更新模块602,用于更新所述计数器的值。
[0096]更新所述计数器的值,例如,将所述计数器中的值加一。
[0097]进一步地,将所述应用程序的函数的计数器中的数据存储在日志中所述函数名对应位置。
[0098]根据本实施例的装置,通过及时更新计数器数据,统计函数的调用频率,作为判断软件的性能的依据,自动的更新数据的方式有效提高检测效率。
[0099]第七实施例
[0100]本实施例提供一种测试装置,本实施例与第七实施例类似,其不同之处在于,如图8所示,本实施例的装置还包括:
[0101]第二计算模块701,用于根据所述计数器的值以及每次调用所述应用程序的函数记录的所述调用时间计算所述应用程序的函数平均调用时间及最长调用时间。
[0102]在一个实例中,将所述函数的每次调用时间的总和除以所述计数器中的值得到平均调用时间。
[0103]所述存储模块505还包括,用于将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。
[0104]将所述平均调用时间及最长调用时间写入所述日志中。可以知道的是,每次调用函数后所述平均调用时间及最长调用时间可能发生变化,在一个实例中,所述写入动作可以是用上述计算结果替换存储数据中所述平均调用时间及最长调用时间的值。在一个实例中,若所述函数首次被调用,则所述平均调用时间与最长调用时间均为首次调用所述函数的调用时间。则可以增加判断所述计数器的值,若为一,则不进行所述计算所述平均调用时间及最长调用时间的步骤,直接将本次调用时间的值赋值给所述平均调用时间及最长调用时间的存储变量。
[0105]根据本实施例的装置,自动的计算统计中的数据,节省人力去检测相关数据,提高检测效率。
[0106]第八实施例
[0107]本实施例提供一种测试装置,本实施例与第八实施例类似,其不同之处在于,如图9所示,本实施例的装置还包括:
[0108]生成模块801,用于根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。
[0109]例如,在一个实例中,可以安装各函数首次被调用的时间先后顺序排列各个函数的各参数表,所述参数表可包括、平均调用时间、最长调用时间、调用次数、调用频率,总的调用时间等。
[0110]根据本实施例的装置,通过生成各函数的性能对比列表,能够减少人工繁琐缓慢的工作模式,更高效,迅捷,准确的进行测试。
[0111]此外,本发明实施例还提供一种计算机可读存储介质,其内存储有计算机可执行指令,上述的计算机可读存储介质例如为非易失性存储器例如光盘、硬盘、或者闪存。上述的计算机可执行指令用于让计算机或者类似的运算装置完成上述的测试方法中的各种操作。
[0112]以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭示如上,然而并非用以限定本发明,任何本领域技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
【主权项】
1.一种测试方法,用于对运行在终端内的应用程序进行测试,其特征在于,所述测试方法包括以下步骤: 在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间; 在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间; 在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名; 根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及 将所述调用时间与所述函数名对应存储。2.如权利要求1所述的测试方法,其特征在于,所述测试方法还包括: 根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数; 更新所述计数器的值。3.如权利要求2所述的测试方法,其特征在于,所述测试方法还包括: 根据所述计数器的值以及每次调用所述应用程序的函数记录的所述调用时间计算所述应用程序的函数平均调用时间及最长调用时间; 将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。4.如权利要求3所述的测试方法,其特征在于,所述测试方法还包括: 根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。5.如权利要求1-4所述的任意一项测试方法,其特征在于,所述测试方法还包括: 将所述应用程序的函数的调用的相关数据写入日志中所述函数名对应位置。6.一种测试装置,用于对运行在终端内的应用程序进行测试,其特征在于,所述装置包括以下模块: 第一获时模块,用于在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间; 第二获时模块,用于在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间; 函数名获取模块,用于在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名; 第一计算模块,用于根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及 存储模块,用于将所述调用时间与所述函数名对应存储。7.如权利要求6所述的测试装置,其特征在于,所述装置还包括: 计数器加载模块,用于根据所述函数名加载所述函数名对应的计数器,所述计数器用于统计所述应用程序的函数的调用次数; 更新模块,用于更新所述计数器的值。8.如权利要求7所述的测试装置,其特征在于,所述装置还包括: 第二计算模块,用于根据所述计数器的值以及每次调用所述应用程序的函数记录的所述调用时间计算所述应用程序的函数平均调用时间及最长调用时间; 所述存储模块还包括,用于将所述应用程序的函数的平均调用时间及最长调用时间与所述函数名对应存储。9.如权利要求8所述的测试装置,其特征在于,所述装置还包括: 生成模块,用于根据所述应用程序的函数的所述平均调用时间及最长调用时间生成所述应用程序的函数的性能对比列表。10.如权利要求6-9所述的任意一项测试装置,其特征在于,所述测试装置还包括: 将所述应用程序的函数的调用数据写入日志中所述函数名对应位置。
【专利摘要】本发明涉及一种测试方法及装置,用于对运行在终端内的应用程序进行测试,在一个实施方式中所述测试方法可包括以下步骤:在所述应用程序的函数入口处加载第一计时器,所述第一计时器用于获取所述终端的第一时间;在所述应用程序的函数结束处加载第二计时器,所述第二计时器用于获取所述终端的第二时间;在所述应用程序的函数结束处执行获取函数名指令,获取所述应用程序的函数的函数名;根据所述第一时间与所述第二时间计算所述应用程序的函数的调用时间;以及将所述调用时间与所述函数名对应存储。根据上述方法,可自动加载测试单元,提高测试的效率。
【IPC分类】G06F11/36
【公开号】CN105630668
【申请号】CN201410717448
【发明人】马识佳
【申请人】深圳市腾讯计算机系统有限公司
【公开日】2016年6月1日
【申请日】2014年12月1日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1