应用软件测试方法、装置及系统的制作方法_3

文档序号:8922500阅读:来源:国知局
基于用例终端生成的测试用例脚本文件,该用例终端为一标准测试终端,通过在该用例终端上执行设定的一个或多个用例操作事件,比如在用例终端上进行点击屏幕、拖拽、双击、按返回键等操作,由于每一个操作对应由相应的设备驱动文件来处理,用例终端会调用相应的设备驱动文件来响应上述操作,并以此生成测试用例脚本文件,作为执行自动化测试的用例脚本,其中,在生成测试用例脚本文件时,会将操作过程中产生的操作事件转换成易读的命令语句。自动化测试过程就是读取该文件中的每一行命令,并作出相应的操作。
[0114]所述测试用例脚本文件包括在所述用例终端上触发的用例操作事件及对应的设备驱动文件,每一设备驱动文件具有相应的编号,一般手机会有4个以上的设备驱动文件来处理不同的操作响应,分别从O号开始,编号递增。
[0115]然后,获取被测终端的操作事件样本文件,操作事件样本文件包括被测终端上的操作事件及对应的设备驱动文件,即被测终端上的每一个按键或点击事件都是由哪些设备驱动文件来处理的。此操作事件样本文件将作为一个参考样本文件,来针对上述获取的测试用例脚本文件进行修改操作。
[0116]其中,被测终端的操作事件样本文件可以采用以下方式获取:
[0117]在被测终端上触发至少一个操作事件,比如点击屏幕操作。响应在所述被测终端上触发的操作事件;根据所述操作事件,获取对应调用的设备驱动文件;根据所述被测终端上触发的操作事件,及对应调用的设备驱动文件生成所述操作事件样本文件。
[0118]在获取到被测终端的操作事件样本文件以及用例终端的测试用例脚本文件之后,根据被测终端的实际特点,对比分析被测终端的操作事件样本文件和测试用例脚本文件,对测试用例脚本文件进行修改,以满足被测终端应用软件的测试需求。
[0119]其中,对测试用例脚本文件的修改操作包括对文件中命令的删除、增加和修正。
[0120]上述对文件中命令的删除、增加的操作是指:将所述测试用例脚本文件与所述操作事件样本文件进行对比分析;获取所述测试用例脚本文件中存在,而所述操作事件样本文件中不存在的命令,将其从所述测试用例脚本文件中删除;获取所述测试用例脚本文件中不存在,而所述操作事件样本文件中存在的命令,将其增加至所述测试用例脚本文件中。
[0121]上述修正操作包括两部分:
[0122]第一部分,参照操作事件样本文件,修改测试用例脚本文件,将测试用例脚本文件中的驱动设备文件编号修改为操作事件样本文件中对应的驱动设备文件编号。
[0123]第二部分,参照操作事件样本文件,合并或拆分测试用例脚本文件中的用例操作事件,并转化为被测终端机型所能识别的事件脚本。
[0124]在以上操作过程中,通过拆分或者合并用例脚本,能过分析出每一个操作所产生的命令组,即每一个操作是由几组命令完成的。然后在每一个操作前或者操作后,增加一些其他的命令,比如截屏等命令“screencap”。
[0125]之后,通过读取新生成的测试用例脚本文件,然后通过解析命令来完成相应的操作。例如读取到“screencap”命令时,则通过socket发送消息通知监听APK,完成当前屏幕的截屏操作。当读到event命令时,则将命令转化为设备驱动文件所能识别的命令后,发送给驱动设备执行相应的操作。
[0126]具体地,上述根据得到的所述新的测试用例脚本文件,调用所述被测终端对应的设备驱动文件,执行与所述用例终端上相应的用例操作事件的步骤可以包括如下操作:
[0127]首先,将所述新的测试用例脚本文件转换为设备驱动文件识别的操作命令;
[0128]然后,解析所述操作命令,获取与所述用例终端上相应的用例操作命令;根据所述用例操作命令调用所述被测终端上对应的设备驱动文件,执行相应的用例操作事件。
[0129]其中,还包括:获取截屏操作命令;在调用所述被测终端上对应的设备驱动文件,执行相应的用例操作事件的过程中,根据所述截屏操作命令,执行被测终端测试过程中的截屏操作,以便测试人员后期可以根据记录的屏幕状态查阅操作过程,了解测试故障信息。
[0130]本实施例通过上述方案,能够针对多种厂商的移动终端,通过获取一个移动终端的测试用例后,在其他不同厂商的移动终端上自动运行该测试用例,从而实现了不同厂商移动终端通用一个测试用例的自动化测试效果,提高了移动终端应用软件测试的通用性以及测试效率,减少了人工大量的重复性工作;此外在测试过程中,还可以记录当前屏幕状态,以便测试人员后期查阅。
[0131]相比现有技术,本实施例方案具有如下优点:
[0132]第一、不局限于被测试APK的范围。测试过程中,可以执行APK之间的切换、挂起和退出等一些列组合操作。因为本实施例方案是基于手机底层设备驱动事件作为操作对象,所以规避了现有的以APK绑定这样的方式进行自动化测试的弊端。
[0133]第二,不局限测试终端的范围。在测试过程中,可以将一个测试用例在多款厂商不同的终端上运行。因为本发明实施例方案是以目标机型的操作样本为基础,对原有测试用例进行完整分析,根据各终端的差异生成新的测试用例来执行。所以规避了现有的同样以驱动设备操作事件为基础,但是不能够完成操作事件移植的自动化测试的弊端。
[0134]如图9所示,本发明第二实施例提出一种应用软件测试装置,在上述第一实施例的基础上,还包括:
[0135]用例生成模块200,用于基于用例终端生成测试用例脚本文件。
[0136]本实施例与上述第一实施例的区别在于,本实施例还包括生成测试用例脚本文件的方案。
[0137]具体地,如图10所示,该用例生成模块200具体包括:响应单元2001、调用单元2002、获取单元2003及生成单元2004,其中:
[0138]响应单元2001,用于响应在用例终端上触发的至少一个用例操作指令;
[0139]调用单元2002,用于调用对应的设备驱动文件执行所述至少一个用例操作指令;
[0140]获取单元2003,用于获取执行操作指令过程中产生的用例操作事件;
[0141]生成单元2004,用于将所述用例操作事件转换为命令语句事件,生成测试用例脚本文件。
[0142]具体地,在生成基于用例终端的测试用例脚本文件时,首先,响应在用例终端上触发的至少一个用例操作指令;比如在用例终端上进行点击屏幕、拖拽、双击、按返回键等操作,由于每一个操作对应由相应的设备驱动文件来处理,用例终端会调用相应的设备驱动文件来响应上述用例操作指令,由此获取执行操作指令过程中产生的用例操作事件;然后,将所述用例操作事件转换为命令语句事件,生成测试用例脚本文件,作为执行自动化测试的用例脚本。
[0143]本实施例通过上述方案,能够针对多种厂商的移动终端,通过生成一个移动终端的测试用例后,在其他不同厂商的移动终端上自动运行该测试用例,从而实现了不同厂商移动终端通用一个测试用例的自动化测试效果,提高了移动终端应用软件测试的通用性以及测试效率,减少了人工大量的重复性工作;此外在测试过程中,还可以记录当前屏幕状态,以便测试人员后期查阅。
[0144]以下以测试操作终端为PC、用例终端和被测终端为手机举例,对本实施例方案实际应用场景操作进行详细阐述:
[0145]首先,将PC与用例手机及被测手机连接。
[0146]在PC上生成本发明实施例的测试用例工具目录,该测试用例工具名为Aconite,如图3所示,图3示出了本实例使用的工具的目录概况,accets文件夹下是本工具需要的一些工具文件,Case文件夹下包含的是录制用例文件,Aconite, exe是本工具的入口,其他.dll文件是本程序运行需要的动态链接库。
[0147]本实例使用的工具主界面如图4所示。
[0148]在工具主界面的几个入口描述如下:
[0149]初始化:包括检测连接手机、在手机端安装使用本工具所需要的一些程序的初始化工作。
[0150]录制用例:填写用例名称去录制用例手机上的测试操作,并把录制的测试用例拷贝到Aconite工具下的Case文件夹中。
[0151]播放用例:列出Aconite工具下Case文件夹中的用例,拷贝到被测手机上,并进行翻译和播放用例操作。
[0152]其中,在工具主界面上述点击初始化按钮后,产生的初始化界面如图5所示。
[0153]在初始化界面中,主要进行本工具运行所必要的初始化操作,其中各个功能的描述如下:
[0154]检测连接:主要查看是否连接上手机;
[0155]安装Aconite, apk:此APK的作用为把被测用例翻译成在被测手机的可执行的用例。
[0156]安装record, replay, init:init是为后续录制和播放所需要的初始化操作,record和replay为录制和播放脚本。
[0157]初始化init:在PC上录制一个标准用例,为Aconite, apk提供翻译用的标准用例。
[0158]完成初始化操作后,可以开始录制测试用例。在工具主界面上述点击录制用例按钮后,产生的录制界面如图6所示。
[0159]在录制界面中,输入一个用例名,点击开始录制,即可以开始在PC操作,开始录制后,按钮会变成结束录制,可以在录制操作完后,点击结束录制按钮来结束用例的录制。
[0160]最后,可以在录制界面中点击拿取用例到Case目录下按钮,把用例手机上当前录制的如图6所示aa用例放到工具目录Case文件夹下。
[0161]完成用例录制后,即可播放录制的用例来测试被测手机。
[0162]在工具主界面上述点击播放用例按钮后,产生的播放用例界面如图7所示。
[0163]其中,播放用例界面的作用是把PC上的一个或多个用例,拷贝到被测手机中,并按添加用例的顺序,在被测手机中顺序播放多个用例。
[0164]以下对图7所示的播放用例界面描述如下:
[0165]其中,左边比较大的空白区域为PC下的用例列表,以下称为列表框A。
[0166]右边边比较大的空白区域为将要拷贝到被测手机,并且将要在被测手机播放的用例,以下称为列表框B。
[0167]通过双击列表框A中的单条用例,可以将此点击的用例添加到将要拷贝到被测手机的用例列表B中。
[0168]载入默认Case文件夹是指
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1