应用测试方法、装置、终端及存储介质与流程

文档序号:26848083发布日期:2021-10-09 01:02阅读:82来源:国知局
应用测试方法、装置、终端及存储介质与流程

1.本技术涉及终端技术领域,尤其涉及一种应用测试方法、装置、终端及存储介质。


背景技术:

2.为了给用户提供高质量的终端使用环境,开发人员需要对终端的应用程序进行稳定性测试,获知应用程序中存在的必现或者偶现的崩溃问题,从而根据稳定性测试的结果进行应用程序的修复。
3.相关技术中,通过monkey工具对终端的应用程序随机选取坐标,执行对应的事件操作,产生大量无效事件操作,甚至可能造成断网、关机等异常事件操作,应用程序的测试效率不高。


技术实现要素:

4.有鉴于此,本技术实施例提供一种应用测试方法、装置、终端及存储介质,以至少解决相关技术应用程序的测试效率不高的问题。
5.本技术实施例的技术方案是这样实现的:
6.本技术实施例提供了一种应用测试方法,所述方法包括:
7.在被测应用载入页面的情况下,通过调用第一组件确定所述被测应用的当前页面对应的第一控件库;所述第一控件库中包含有对应页面中的至少一个第一控件;
8.至少一次对所述第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发所述被测应用载入新页面,或,直至满足设定的结束测试条件。
9.其中,上述方案中,所述方法还包括:
10.通过调用第二组件,从所述被测应用对应的设定文件中获取第一协议,并基于获取的第一协议在所述被测应用载入对应的设定页面。
11.上述方案中,所述方法还包括:
12.在执行的第一操作用于触发所述被测应用载入新页面,且对应的新页面属于第一测试模块的情况下,触发所述被测应用载入对应的新页面;所述第一测试模块表征所述被测应用当前的测试模块。
13.上述方案中,所述方法还包括:
14.在对应的新页面的第一属性值属于设定属性值集合的情况下,确定对应的新页面属于第一测试模块;所述设定属性值集合包括所述第一测试模块对应的至少一个页面中的每个页面的第一属性值。
15.上述方案中,所述第一属性值包括activity属性值。
16.上述方案中,所述设定的结束测试条件,包括:
17.对所述被测应用进行测试的时间累计达到第一设定阈值,
18.和/或,
19.对所述被测应用的第一操作的次数累计达到第二设定阈值。
20.本技术实施例还提供了一种应用测试装置,包括:
21.第一处理单元,用于在被测应用载入页面的情况下,通过调用第一组件确定所述被测应用的当前页面对应的第一控件库;所述第一控件库中包含有对应页面中的至少一个第一控件;
22.操作单元,用于至少一次对所述第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发所述被测应用载入新页面,或,直至满足设定的结束测试条件。
23.上述方案中,所述装置还包括:
24.第一载入单元,用于通过调用第二组件,从所述被测应用对应的设定文件中获取第一协议,并基于获取的第一协议在所述被测应用载入对应的设定页面。
25.上述方案中,所述装置还包括:
26.第二载入单元,用于在执行的第一操作用于触发所述被测应用载入新页面,且对应的新页面属于第一测试模块的情况下,触发所述被测应用载入对应的新页面;所述第一测试模块表征所述被测应用当前的测试模块。
27.上述方案中,所述装置还包括:
28.第二处理单元,用于在对应的新页面的第一属性值属于设定属性值集合的情况下,确定对应的新页面属于第一测试模块;所述设定属性值集合包括所述第一测试模块对应的至少一个页面中的每个页面的第一属性值。
29.上述方案中,所述第一属性值包括activity属性值。
30.上述方案中,所述设定的结束测试条件,包括:
31.对所述被测应用进行测试的时间累计达到第一设定阈值,
32.和/或,
33.对所述被测应用的第一操作的次数累计达到第二设定阈值。
34.本技术实施例还提供了一种终端,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
35.其中,所述处理器用于运行所述计算机程序时,执行上述应用测试方法的步骤。
36.本技术实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述应用测试方法的步骤。
37.在本技术实施例中,在被测应用载入页面的情况下,通过调用第一组件确定当前页面对应的第一控件库,第一控件库中包含有对应页面中的至少一个第一控件;至少一次对第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发被测应用载入新页面,或,直至满足设定的结束测试条件。通过对当前页面的控件执行操作,这样,可以避免应用测试过程中的无效操作和异常事件的发生,提高应用测试的效率。
附图说明
38.图1为本技术实施例提供的一种应用测试方法的流程示意图;
39.图2为本技术应用实施例提供的一种应用测试方法的流程示意图;
40.图3为本技术应用实施例提供的另一种应用测试方法的流程示意图;
41.图4本技术实施例提供的一种应用测试装置的结构示意图;
42.图5本技术实施例提供的一种终端的结构示意图。
具体实施方式
43.为了给用户提供高质量的终端使用环境,开发人员需要对终端的应用程序进行稳定性测试,获知应用程序中存在的必现或者偶现的崩溃问题,从而根据稳定性测试的结果进行应用程序的修复。
44.相关技术中,通过monkey工具对终端的应用程序随机选取坐标,执行对应的事件操作,产生大量无效事件操作,甚至可能造成断网、关机等异常事件操作,应用程序的测试效率不高。
45.基于此,在本技术的各种实施例中,在被测应用载入页面的情况下,通过调用第一组件确定当前页面对应的第一控件库,第一控件库中包含有对应页面中的至少一个第一控件;至少一次对第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发被测应用载入新页面,或,直至满足设定的结束测试条件。通过对当前页面的控件执行操作,这样,可以避免应用测试过程中的无效操作和异常事件的发生,提高应用测试的效率。
46.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
47.图1为本技术实施例提供的应用测试方法的实现流程示意图,执行主体可以是终端,其中,终端包括但不限于手机、平板等电子设备。如图1示出的,应用测试方法包括:
48.步骤101:在被测应用载入页面的情况下,通过调用第一组件确定所述被测应用的当前页面对应的第一控件库。
49.其中,所述第一控件库中包含有对应页面中的至少一个第一控件;
50.在本实施例中,每当被测应用载入页面的情况下,通过调用第一组件获取当前页面对应的控件信息,将获取到的控件信息确定为与当前页面对应的第一控件库。这里,第一控件库是当前页面对应的控件的集合,包括对应页面中的至少一个第一控件。
51.步骤102:至少一次对所述第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发所述被测应用载入新页面,或,直至满足设定的结束测试条件。
52.对第一控件库中的任一第一控件执行第一操作,判断执行的第一操作是否触发被测应用载入新页面或当前测试状态已满足设定的结束测试条件,若判断结果表征不会触发被测应用载入新页面且当前测试状态尚未满足设定的结束测试条件,则再次对第一控件库中的任一第一控件执行第一操作,重复以上步骤,直至判断结果表征触发被测应用载入新页面,则载入新页面,通过调用第一组件获取新页面对应的控件信息,并再次对新页面的任一控件执行第一操作;或直至当前测试状态满足设定的结束测试条件,则停止应用测试。
53.这里,对第一控件执行的第一操作,可以表征事件操作,包括但不限于点击、长按、双击、滑动、拖拽或输入等。载入的新页面是指与当前页面不同的另一页面,这里的新页面可以是在本次应用测试过程中已经载入过的页面,例如,在页面1内点击某一标签对应的控件,被测应用从页面1载入到页面2,再在页面2内点击“返回”标签对应的控件,被测应用从页面2载入到页面1,在第二次载入页面时,页面1即新页面。并且,在对第一控件库中的任一第一控件执行第一操作时,选取任一第一控件的方式可以是随机的,通过随机选取当前页面任一第一控件执行第一操作,在测试过程中对应用进行尽可能全面地测试。
54.在本技术实施例中,在被测应用载入页面的情况下,通过调用第一组件确定当前
页面对应的第一控件库,第一控件库中包含有对应页面中的至少一个第一控件;至少一次对第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发被测应用载入新页面,或,直至满足设定的结束测试条件。通过对当前页面的控件执行操作,这样,可以避免应用测试过程中的无效操作和异常事件的发生,提高应用测试的效率。
55.为了对被测应用的设定页面进行稳定性测试,需要跳转到设定页面开始测试。scheme协议是一种页面内跳转协议,通过定义scheme协议,可以实现跳转应用中对应的设定页面。相关技术中,通过adb shell am start命令启动scheme协议,实现在被测应用中载入对应的页面,但由于scheme协议中通常存在特殊字符,导致adb shell命令被截断,无法正常载入设定页面。在一实施例中,所述方法还包括:
56.通过调用第二组件,从所述被测应用对应的设定文件中获取第一协议,并基于获取的第一协议在所述被测应用载入对应的设定页面。
57.通过调用第二组件,从被测应用对应的设定文件中获取存储于设定文件中的第一协议,基于获取的第一协议生成intent组件,通过intent组件在被测应用载入第一协议对应的设定页面。这里,设定文件可以是与被测的应用程序关联的一个文件,用于存储第一协议。第一协议可以是scheme协议,设定页面即scheme协议对应的页面,在应用程序中,每个scheme协议能对应打开一个设定的页面。intent组件可以描述应用中一次操作的动作、动作涉及数据、附加数据,android可以根据intent组件的描述找到对应的组件,将intent组件的信息传递给对应的组件,实现对应组件的调用。
58.把第一协议保存在设定文件,通过从设定文件中读取第一协议,生成intent组件,通过intent组件在被测应用载入第一协议对应的设定页面。这样,在载入设定页面进行稳定性测试时,不需要通过命令行启动第一协议,能够避免因scheme协议中的特殊字符导致的命令被截断、无法载入设定页面的现象,从而确保设定页面的载入。
59.在一实施例中,所述方法还包括:
60.在执行的第一操作用于触发所述被测应用载入新页面,且对应的新页面属于第一测试模块的情况下,触发所述被测应用载入对应的新页面;所述第一测试模块表征所述被测应用当前的测试模块。
61.在执行的第一操作可以用于触发被测应用载入新页面的情况下,判断将要载入的新页面是否属于第一测试模块,在对应的新页面属于第一测试模块的情况下,触发被测应用载入对应的新页面。这里,第一测试模块表征被测应用当前的测试模块,可以在进行应用测试之前设定,并载入第一测试模块的设定页面。第一测试模块可以是应用程序中相对独立的程序单元,每个程序单元完成和实现一个相对独立的软件功能。
62.通过判断将要载入的新页面是否属于当前测试模块,确定是否载入新页面,实现对设定测试模块的测试,这样,通过精细化模块测试,可以对设定测试模块,如改动过代码的测试模块进行测试,从而提高应用测试的测试效率。
63.在一实施例中,所述方法还包括:
64.在对应的新页面的第一属性值属于设定属性值集合的情况下,确定对应的新页面属于第一测试模块;所述设定属性值集合包括所述第一测试模块对应的至少一个页面中的每个页面的第一属性值。
65.在判断对应的新页面是否属于第一测试模块时,通过新页面的第一属性值是否属
于设定属性值集合,在判断结果表征新页面的第一属性值属于设定属性值集合的情况下,确定对应的新页面属于第一测试模块。这里,第一测试模块对应至少一个页面,设定属性值集合包括第一测试模块对应的每个页面的第一属性值。设定属性值集合的确定可以是在待测应用测试开始前,从待测应用的文件中读取得到的。
66.通过第一测试模块对应的页面的属性值信息集合为判断条件,判断新页面是否属于第一测试模块,在满足条件的情况下才能触发载入对应的新页面,这样,可以判断将要载入的新页面是否属于当前测试模块,从而对当前测试模块的精细化模块测试。
67.在一实施例中,所述第一属性值包括activity属性值。
68.这里,activity是页面中的一个组件,用于实现屏幕的交互。
69.实际应用中,用户在对被测应用执行稳定性测试时,可以输入第一测试模块信息。例如,第一测试模块包含页面a、页面b、页面c,用户提供的模块信息如下:页面a的activity组件的类的名称为activitynamea、页面b的activity组件的类的名称为activitynameb、页面c的activity组件的类的名称为activitynamec,第一测试模块对应的设定属性值集合包括activitynamea、activitynameb和activitynamec。通过activitymanager获取到新页面的组件名称componentname信息,基于componentname.getclassname可以得到新页面的activity组件的类的名称,如果新页面的activity组件的类的名称属于设定属性值集合,判断新页面属于第一测试模块;否则判断新页面不属于第一测试模块。
70.在一实施例中,所述设定的结束测试条件,包括:
71.对所述被测应用进行测试的时间累计达到第一设定阈值,
72.和/或,
73.对所述被测应用的第一操作的次数累计达到第二设定阈值。
74.这里,设定的结束测试条件,可以是测试时间条件,可以是测试次数条件,也可以是测试时间条件和测试次数条件的结合,还可以结合其他的结束测试条件如应用程序的设定比例的页面的设定比例的第一控件已执行过第一操作等。当对被测应用的测试满足设定结束测试条件时,被测应用结束测试,可以输出对应的测试结果。
75.实际应用中,可以采用以下任一种:对被测应用进行测试的时间累计达到1小时;对被测应用的第一操作的次数累计达到30000次;对被测应用进行测试的时间累计达到1小时且对被测应用的第一操作的次数累计达到50000次。
76.通过设定结束测试条件,在满足设定结束测试条件后将不再执行第一操作,实现应用测试过程的结束。
77.相关技术中,为了对应用程序的控件进行操作,通常借助框架获取当前页面的第一控件。例如,可以通过安装appium环境使用appium框架,获取当前页面所有控件;可以使用robotium框架编写ui自动化脚本,robotium是一种android自动化测试框架,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的api,能够对各种控件进行操作。但由于需要安装环境、编写测试脚本,对被测应用重新签名,也对用户的编程技能要求较高,存在应用测试效率不高的问题。
78.在一实施例中,所述方法基于accessibilityservice实现。
79.通过accessibilityservice获取当前页面的所有控件信息,至少一次对任一第一控件执行第一操作,并判断第一操作是否触发新页面,若触发则载入新页面,或判断新页面
是否属于测试模块,重复上述步骤直至满足设定的结束测试条件。这样,通过在终端直接执行对应的jar文件,不需要对被测应用进行重签名、对终端进行root等操作,也不需要编写脚本,降低了对用户的编程技能的要求,提升了应用测试效率。
80.下面结合应用实施例对本技术再作进一步的详细描述。
81.随着移动计算技术的发展,硬件技术的不断完善,越来越多的用户使用移动终端操作完成各类任务。为了满足不同用户的个性化需求,移动终端系统也变得更加多样化。在同一个系统下,也有各种不同的软件供用户选择。为了用户更好的终端使用体验,对移动终端中装载的应用程序提出了更高的稳定性及健壮性的要求。因此,开发人员需要对终端的应用程序进行稳定性测试,获知应用程序中存在的必现或者偶现的崩溃问题,从而根据稳定性测试的结果进行应用程序的修复和改进。
82.相关技术中,android系统可以通过安卓调试桥(adb,android debug bridge),一种可以用来操作终端设备如手机设备或模拟器的命令行工具,调用android系统的monkey工具,通过随机选取坐标,执行点击、拖拽等事件操作,对终端的应用程序进行稳定性测试。monkey是android系统自带一个命令行工具,可以运行在模拟器里或者终端设备中运行。monkey向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试。由于monkey的操作非常随机且不可控,在测试期间很容易点击到应用程序的页面之外,而是点击到移动终端的桌面或其他非有效区域,产生大量无效点击;甚至可能导致断网、关机等异常操作等,影响到稳定性测试的正常进行,应用程序的测试效率不高。
83.并且,为了满足用户的个性化需求,应用程序对应有大量的页面,且支持的很多功能。因而,一个应用程序会划分成许多相对独立的模块。模块是指整个应用程序中一些相对独立的程序单元,每个程序单元完成和实现一个相对独立的软件功能。这样,在仅对应用程序中的部分模块改动代码时,可以针对性地对模块进行稳定性测试,在有限的测试时间内提高测试效率。相关技术中,无法准确地载入到改动代码的模块的页面,因而不能对模块进行精细化的稳定性测试。
84.结合图2,对应用的全局性的应用测试的测试方法,包括:
85.打开应用的默认页面,获取当前页面的所有控件的信息,从中随机选取任一控件,执行点击、拖拽等操作,重复对当前页面的任一控件执行操作,直到对控件的操作触发载入一个新页面,载入新页面,然后再获取新页面的所有控件信息,并随机选任一控件进行操作。重复上述步骤直到满足设定的结束测试条件。
86.相关技术采用随机选取坐标进行操作的方式,由于随机选取坐标时,会存在被选择的坐标是不可点击或者不可进行操作的区域,如移动终端的桌面等区域;当被选取的坐标是用于指示关闭网络或者关机操作的区域时,就会导致断网、关机等异常操作,影响到稳定性测试的正常进行,应用程序的测试效率不高。在本应用实施例中,通过随机选取页面上的控件进行操作,能够减少无效操作和异常事件的产生,提高了稳定性测试的效率。
87.为了对被测应用的设定页面进行稳定性测试,需要跳转到设定页面开始测试。scheme协议是一种页面内跳转协议,通过定义scheme协议,可以实现跳转应用中对应的设定页面。相关技术中,scheme协议需要在一个命令处理器中执行,例如bash。bash是一个命令处理器,通常运行于文本窗口中,执行用户输入的命令。bash处理器会对一些字符(如逗号、双引号等)做特殊的处理。如果原本的scheme协议中就包含逗号,双引号等字符时,用
bash处理器进行命令行启动,scheme协议就会出现被截断或者失效的问题。
88.结合图3,对应用的模块测试的应用测试方法,包括:
89.从设定文件中读取模块的scheme协议和模块包括的至少一个页面的activity信息等,根据读取到的scheme协议载入设定页面。
90.根据scheme协议能够精准的载入页面进行测试,避免测试时对无关的页面的操作,提高了测试效率;通过scheme协议存储到设定文件中,当稳定性测试开启时,从设定文件中读取scheme协议,启动页面。解决了当存在特殊字符时,通过命令行启动页面会存在被截断、失效的问题。
91.这里,可以是把scheme协议存储到设定文件中,然后把设定文件通过adb push命令加载到移动终端设备中。这样,在稳定性测试时,直接读取移动终端的scheme协议,避免了通过bash等处理器中读取scheme协议存在的被截断、失效问题。
92.通过accessibilityservice服务获取当前页面的所有控件信息,随机选取任一控件,进行点击、拖拽等操作,并判断控件操作是否会导致被测应用载入新页面。当控件操作会导致被测应用载入新页面时,判断新页面的activity是否属于测试模块页面,如果属于测试模块页面,则载入新页面,并获取新页面的控件信息;如果不属于测试模块页面,则停留在当前页面继续测试。重复上述步骤直到满足设定的结束测试条件。
93.在稳定性测试期间,以页面是否属于测试模块为依据,判断页面是否被打开。这样,可以实现以测试模块为维度的精准性测试,对与测试模块对应的页面进行测试,减少了其他无效页面的操作,大幅度提升了效率。从而能够实现在较短的时间内,对测试模块进行更加充分的测试。
94.实际应用中,以一次购物过程的展示为例,在购物车页面中点击某一个商品的图标,触发载入商品详情页面,由于购物车页面属于购物车模块,商品详情页面属于商详模块,由于新页面(商品详情页面)不属于测试模块(购物车模块),会停留在购物车页面继续测试。
95.在本技术应用实施例中,通过accessibilityservice服务获取当前页面的控件信息,并随机选取任一控件进行事件操作,提供了简单高效的移动终端应用稳定性测试方法,不需要对被测应用进行重签名、对终端进行root等操作,也不需要编写脚本,降低了对用户编程技能的要求,提升了应用测试效率。通过获取页面控件,针对页面控件进行点击、拖拽等操作,具有可控性,大幅度减少了无效点击,提高了测试效率。并且,通过把scheme协议保存在设定文件,通过从设定文件中读取scheme协议,生成intent组件,能够对指定的页面进行稳定性测试,解决了通过命令行启动页面时因特殊字符存在导致的页面启动被截断的问题。
96.为实现本技术实施例的方法,本技术实施例还提供了一种应用测试装置,如图4所示,该装置包括:
97.第一处理单元401,用于在被测应用载入页面的情况下,通过调用第一组件确定所述被测应用的当前页面对应的第一控件库;所述第一控件库中包含有对应页面中的至少一个第一控件;
98.操作单元402,用于至少一次对所述第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发所述被测应用载入新页面,或,直至满足设定的结束测试条件。
99.其中,在一个实施例中,所述装置还包括:
100.第一载入单元,用于通过调用第二组件,从所述被测应用对应的设定文件中获取第一协议,并基于获取的第一协议在所述被测应用载入对应的设定页面。
101.在一个实施例中,所述装置还包括:
102.第二载入单元,用于在执行的第一操作用于触发所述被测应用载入新页面,且对应的新页面属于第一测试模块的情况下,触发所述被测应用载入对应的新页面;所述第一测试模块表征所述被测应用当前的测试模块。
103.在一个实施例中,所述装置还包括:
104.第二处理单元,用于在对应的新页面的第一属性值属于设定属性值集合的情况下,确定对应的新页面属于第一测试模块;所述设定属性值集合包括所述第一测试模块对应的至少一个页面中的每个页面的第一属性值。
105.在一个实施例中,所述第一属性值包括activity属性值。
106.在一个实施例中,所述设定的结束测试条件,包括:
107.对所述被测应用进行测试的时间累计达到第一设定阈值,
108.和/或,
109.对所述被测应用的第一操作的次数累计达到第二设定阈值。
110.实际应用时,所述第一处理单元401、操作单元402、第一载入单元、第二载入单元、第二处理单元可由基于应用测试装置中的处理器,比如中央处理器(cpu,central processing unit)、数字信号处理器(dsp,digital signal processor)、微控制单元(mcu,microcontroller unit)或可编程门阵列(fpga,field-programmable gate array)等实现。
111.需要说明的是:上述实施例提供的应用测试装置在进行应用测试时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的应用测试装置与应用测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
112.基于上述程序模块的硬件实现,且为了实现本技术实施例应用测试方法,本技术实施例还提供了一种终端,如图5所示,该终端500包括:
113.通信接口510,能够与其它设备比如网络设备等进行信息交互;
114.处理器520,与所述通信接口510连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的方法。而所述计算机程序存储在存储器530上。
115.具体地,所述处理器520,用于:
116.在被测应用载入页面的情况下,通过调用第一组件确定所述被测应用的当前页面对应的第一控件库;所述第一控件库中包含有对应页面中的至少一个第一控件;
117.至少一次对所述第一控件库中的任一第一控件执行第一操作,直至执行的第一操作触发所述被测应用载入新页面,或,直至满足设定的结束测试条件。
118.其中,在一个实施例中,所述处理器520,用于:
119.通过调用第二组件,从所述被测应用对应的设定文件中获取第一协议,并基于获
取的第一协议在所述被测应用载入对应的设定页面。
120.在一个实施例中,所述处理器520,用于:
121.在执行的第一操作用于触发所述被测应用载入新页面,且对应的新页面属于第一测试模块的情况下,触发所述被测应用载入对应的新页面;所述第一测试模块表征所述被测应用当前的测试模块。
122.在一个实施例中,所述处理器520,用于:
123.在对应的新页面的第一属性值属于设定属性值集合的情况下,确定对应的新页面属于第一测试模块;所述设定属性值集合包括所述第一测试模块对应的至少一个页面中的每个页面的第一属性值。
124.在一个实施例中,所述第一属性值包括activity属性值。
125.在一个实施例中,所述设定的结束测试条件,包括:
126.对所述被测应用进行测试的时间累计达到第一设定阈值,
127.和/或,
128.对所述被测应用的第一操作的次数累计达到第二设定阈值。
129.当然,实际应用时,终端500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统540。
130.本技术实施例中的存储器530用于存储各种类型的数据以支持终端500的操作。这些数据的示例包括:用于在终端500上操作的任何计算机程序。
131.可以理解,存储器530可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read

only memory)、可擦除可编程只读存储器(eprom,erasable programmable read

only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read

only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd

rom,compact disc read

only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本技术实施例描述的存储器530旨在包括但不限于这些和任意其它适合类型的存储器。
132.上述本技术实施例揭示的方法可以应用于处理器520中,或者由处理器520实现。
处理器520可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器520中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器520可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器520可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器530,处理器520读取存储器530中的程序,结合其硬件完成前述方法的步骤。
133.可选地,所述处理器520执行所述程序时实现本技术实施例的各个方法中由终端实现的相应流程,为了简洁,在此不再赘述。
134.在示例性实施例中,本技术实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器530,上述计算机程序可由终端的处理器520执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd

rom等存储器。
135.在本技术所提供的几个实施例中,应该理解到,所揭露的装置、电子设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
136.上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
137.另外,在本技术各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
138.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
139.或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
140.需要说明的是,本技术实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。除非另有说明和限定,术语“连接”应做广义理解,例如,可以是电连接,也可以是两
个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
141.另外,在本技术实例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解“第一\第二\第三”区分的对象在适当情况下可以互换,以使这里描述的本技术的实施例可以除了在这里图示或描述的那些以外的顺序实施。
142.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
143.在具体实施方式中所描述的各个实施例中的各个具体技术特征,在不矛盾的情况下,可以进行各种组合,例如通过不同的具体技术特征的组合可以形成不同的实施方式,为了避免不必要的重复,本技术中各个具体技术特征的各种可能的组合方式不再另行说明。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1