本发明专利技术公开了一种Android应用程序测试方法和测试装置,所述方法包括:从测试用例中解析出各操作步骤的关键字的配置值;依据解析出的各操作步骤的序号的配置值,依次执行各操作步骤的测试;对其中一个操作步骤执行的测试为:调用元素操作工具,所述元素操作工具根据该操作步骤的操作类型和操作对象的配置值,对被测的Android应用程序中的相应UI元素进行相应操作。这样,测试人员可以方便地配置基于关键字的测试用例;通过对测试用例中的关键字进行解析,并在底层调用相关工具实现对被测应用程序中的UI元素的操作,从而自动完成测试过程;从而大大为测试人员提供了测试的便捷性。
【技术实现步骤摘要】
本专利技术涉及程序测试领域,尤其涉及一种Android应用程序测试方法和测试装置。
技术介绍
软件测试,一直都是应用程序开发中非常关键也是非常繁琐的一环,对Android(安卓)应用程序的测试来说尤其如此。随着基于Android操作系统的智能设备的日益普及,Android应用程序数量也越来越多,功能越来越复杂,针对Android应用程序的功能测试、稳定性测试也显得愈发重要。由于Android兴起较晚,Android测试手段相对于其它的软件测试来说相对落后,目前大量的Android应用程序的测试都是依赖于人工完成,这些测试工作不仅重复性较高,且人力投入比较大;因此迫切的需要Android自动化测试技术来提高测试效率,节省测试的人力物力投入。目前Android自动化测试工具有Monkey (猴子工具,谷歌提供的一种自动化随机测试工具)、MonkeyRunner (猴子跑步工具,另一种自动化随机测试工具)等,测试人员利用这些工具编写测试脚本时需依赖于编程的实现。而现实情况是,对于测试人员,其编程基础往往比较薄弱,很难有效的利用这些工具,自动化用例编写成本和维护成本都较大,因此需要一种更为方便测试人员应用的、无需编程的Android自动化测试框架来帮助测试人员完成自动化测试。公开号为CN102521118的专利“一种Android程序的自动测试方法”、公开号为CN101957793的专利“一种面向Android及其衍生系统的软件操作录制回放方法”以及公开号为CN102419732的专利“基于android平台的自动化测试方法及测试工具”,均通过录制-回放的方式实现Android应用程序的自动化测试,即首先通过录制操作事件并生成android平台可执行脚本的脚本录制步骤;其次在设备对象接收到执行脚本的命令后执行所述可执行脚本的脚本执行步骤。这种录制-回放式的自动化测试方法操作相对来说比较简单,无需编程,但严重依赖与屏幕的尺寸和坐标,一旦屏幕尺寸发生改变或界面布局发生变化,则测试人员需重新录制脚本;因此,这种录制-回放的测试方式仍然会比较麻烦,不够便捷。此外,公开号为CN102141960的专利“一种基于Android的自动化测试方法”将测试用例生成APK文件,调用Monkey指令实现自动化。该方法操作界面可视化。但此方法在编写测试用例时,由于是通过打包成APK(Android Application Package,安卓应用程序安装包)的方式,对编程技能要求较高,需要测试用例编写人员熟悉Android应用开发才能编写测试用例。综上所述,现有技术的Android应用程序的测试方法不够便捷,需要一种更为方便测试人员应用的、无需编程的Android自动化测试方法。
技术实现思路
本专利技术的实施例提供了一种Android应用程序测试方法和测试装置,可以更为方便地实现对Android应用程序的测试。根据本专利技术的一个方面,提供了一种Android应用程序测试方法,包括从测试用例中解析出各操作步骤的关键字的配置值;其中,所述操作步骤的关键字包括序号、操作类型、操作对象;所述操作对象的配置值为UI元素的标识或文本信息;依据解析出的各操作步骤的序号的配置值,依次执行各操作步骤的测试;对其中一个操作步骤执行的测试为调用元素操作工具,所述元素操作工具根据该操作步骤的操作类型和操作对象的配置值,对被测的Android应用程序中的相应UI元素进行相应操作。进一步,所述操作步骤的关键字还包括校验值,所述校验值的配置值为期望Π元素的标识或文本信息;在执行操作步骤的测试后,还包括将该操作步骤的校验值的配置值与所述元素操作工具返回的执行结果进行比对;若所述执行结果中包含有该操作步骤的校验值的配置值,则确认该操作步骤的测试结果为成功;否则,确认该操作步骤的测试结果为失败。进一步,在所述确认该操作步骤的测试结果为失败后,还包括通过所述元素操作工具对被测的Android应用程序进行截屏操作,保留屏幕信肩、O较佳地,所述操作步骤的关键字还包括输入值;以及所述对其中一个操作步骤执行的测试,还包括若该操作步骤的操作类型的配置值为input,则所述元素操作工具还根据该操作步骤的输入值的配置值,对被测的Android应用程序中的相应UI元素进行输入操作。较佳地,所述测试用例是基于可扩展标示语言XML的;以及在所述依次执行各操作步骤的测试之前,还包括从所述测试用例中解析出如下关键字的配置值超时时间、循环次数、步骤间隔;以及在所述执行各操作步骤的测试时,还包括监控测试所耗时间;若监控的时间超过超时时间的配置值则提出告警信息;依据解析出的步骤间隔的配置值,控制执行各操作步骤之间的时间间隔;依据解析出的循环次数的配置值,控制执行各操作步骤的测试的循环次数。根据本专利技术的另一个方面,还提供了一种Android应用程序测试装置,包括测试用例解析模块,用于从测试用例中解析出各操作步骤的关键字的配置值;其中,所述操作步骤的关键字包括序号、操作类型、操作对象;所述操作对象的配置值为UI元素的标识或文本信息; 测试执行模块,用于依据所述测试用例解析模块解析出的各操作步骤的序号的配置值,依次执行各操作步骤的测试;对其中一个操作步骤执行的测试为调用元素操作工具,所述元素操作工具根据该操作步骤的操作类型和操作对象的配置值,对被测的Android应用程序中的相应UI元素进行相应操作。进一步,所述装置还包括测试用例生成模块,用于根据测试者输入的各操作步骤的关键字的配置值,生成所述测试用例;测试用例存储模块,用于存储所述测试用例生成模块生成的测试用例;以及所述测试用例解析模块还用于从所述测试用例存储模块获取所述测试用例。较佳地,所述操作步骤的关键字还包括校验值,所述校验值的配置值为期望Π元素的标识或文本信息;以及测试执行模块还用于在所述元素操作工具根据该操作步骤的操作类型和操作对象的配置值,对被测的Android应用程序中的相应Π元素进行相应操作后,获取所述元素操作工具返回的执行结果;以及所述装置还包括测试结果判定模块,用于从所述测试执行模块获取所述执行结果,并将该操作步骤的校验值的配置值与所述执行结果进行比对;若所述执行结果中包含有该操作步骤的校验值的配置值,则确认该操作步骤的测试结果为成功;否则,确认该操作步骤的测试结果为失败。进一步,所述装置还包括测试结果显示模块,用 于获取所述测试结果判定模块确认的各操作步骤的测试结果,并以HTML页面形式进行显示。进一步,所述测试用例生成模块还用于还根据测试者输入的如下关键字的配置值生成所述测试用例超时时间、循环次数、步骤间隔;以及所述测试用例解析模块还用于从所述测试用例中解析出所述超时时间、循环次数、步骤间隔的配置值;以及所述测试执行模块还用于获取所述测试用例解析模块解析出的超时时间、循环次数、步骤间隔的配置值;并在所述依次执行各操作步骤的测试时,监控测试所耗时间;若监控的时间超过所述超时时间的配置值则提出告警信息;依据所述步骤间隔的配置值,控制执行各操作步骤之间的时间间隔;依据所述循环次数的配置值,控制执行各操作步骤的测试的循环次数。本专利技术实施例的技术方案中,由于测试人员可以方便地配置基于关键字的测试用例;而通过对测试用例中的关键字进行解析本文档来自技高网...
【技术保护点】
一种Android应用程序测试方法,包括:从测试用例中解析出各操作步骤的关键字的配置值;其中,所述操作步骤的关键字包括:序号、操作类型、操作对象;所述操作对象的配置值为UI元素的标识或文本信息;依据解析出的各操作步骤的序号的配置值,依次执行各操作步骤的测试;对其中一个操作步骤执行的测试为:调用元素操作工具,所述元素操作工具根据该操作步骤的操作类型和操作对象的配置值,对被测的Android应用程序中的相应UI元素进行相应操作。
【技术特征摘要】
1.一种Android应用程序测试方法,包括 从测试用例中解析出各操作步骤的关键字的配置值;其中,所述操作步骤的关键字包括序号、操作类型、操作对象;所述操作对象的配置值为UI元素的标识或文本信息; 依据解析出的各操作步骤的序号的配置值,依次执行各操作步骤的测试;对其中一个操作步骤执行的测试为调用元素操作工具,所述元素操作工具根据该操作步骤的操作类型和操作对象的配置值,对被测的Android应用程序中的相应UI元素进行相应操作。2.如权利要求1所述的方法,其特征在于,所述操作步骤的关键字还包括校验值,所述校验值的配置值为期望UI元素的标识或文本信息; 在执行操作步骤的测试后,还包括 将该操作步骤的校验值的配置值与所述元素操作工具返回的执行结果进行比对;若所述执行结果中包含有该操作步骤的校验值的配置值,则确认该操作步骤的测试结果为成功;否则,确认该操作步骤的测试结果为失败。3.如权利要求2所述的方法,其特征在于,在所述确认该操作步骤的测试结果为失败后,还包括 通过所述元素操作工具对被测的Android应用程序进行截屏操作,保留屏幕信息。4.如权利要求1-3任一所述的方法,其特征在于,所述操作步骤的关键字还包括输入值;以及 所述对其中一个操作步骤执行的测试,还包括若该操作步骤的操作类型的配置值为input,则所述元素操作工具还根据该操作步骤的输入值的配置值,对被测的Android应用程序中的相应Π元素进行输入操作。5.如权利要求4所述的方法,其特征在于,所述测试用例是基于可扩展标示语言XML的;以及 在所述依次执行各操作步骤的测试之前,还包括 从所述测试用例中解析出如下关键字的配置值超时时间、循环次数、步骤间隔;以及 在所述执行各操作步骤的测试时,还包括 监控测试所耗时间;若监控的时间超过超时时间的配置值则提出告警信息; 依据解析出的步骤间隔的配置值,控制执行各操作步骤之间的时间间隔; 依据解析出的循环次数的配置值,控制执行各操作步骤的测试的循环次数。6.一种Android应用程序测试装置,包括 测试用例解析模块,用于从测试用例中解析出各操作步骤的关键字的配置值;其中,所述操作步骤的关键字包括序号、操作类型、操作对象;所述操作对象的配...
【专利技术属性】
技术研发人员:夏培勇,
申请(专利权)人:青岛海信传媒网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。