(转)iphone、ipad自动化测试解决方案

2012-07-30  白云 

明确概念:
 
目的:自动化测试是为了减轻测试人员“例行公事”似的测试任务,而诞生的一种测试方法,他是必须的,但不是万能的,就像金钱一样;
 
概念:利用现成的测试工具,对程序的执行、操作流程进行录制,而后运行时让程序自动走完录制的流程;
 
原理:操作录制过程,就是测试脚本的自动生成过程,以后的自动测试就是执行相应的脚本,所以,必要时是需要自己动手实现脚本编写;
 
 
测试工具包括:
 
1、测试脚本的文件包(插入到程序中),如foneMonkey 在mac中应用,其他地方没用过
 
2、完整的工具(能够启动程序,并按照已经录制的操作步骤执行),eggplant软件
 
3、自动运行脚本平台(能够启动程序,操作过程由自己编写脚本实现),Instruments,xcode环境一般自带
 
 
我尝试过的两种测试方法:
 
(1)利用fontMonkey测试工具包
 
1、下载FoneMonkey.zip文件并解压
 
2、用xcode打开工程目录
 
3、添加一个测试用的target
并重命名:
4、选取刚才创建的target并将解压好的FontMonkey倒入工程目录
也可以直接拖入到文件目录:
倒入时确保你的target为刚才添加的
5、添加完以后的效果为

6、此时在你的框架中会默认添加两个文件
 
      libFoneMonkey.5.4a.beta.a
 
      libFoneMonkeyOCUnit.5.4a.beta.a
 

     这两个文件在FoneMonkey的lib文件夹中,如果框架管理中没有,则可以直接拖过去;
 
     然后再添加几个框架文件(默认有三个),libxml2.dylib、SenTestingKit.framework、QuartzCore.framework
 
7、修改工程的配置文件 Buile Seting->Linking->Other Linker Flags
 
      添加选项 -all_load

8、开始编译程序
 
       选择测试target以及模拟器(真机器还没试验),运行

第二个按钮是录制、第三个是播放、第四个返回上级页面;录制完成后,右上角第一个是保存,第二个是选择保存的脚本对程序进行测试;
 
原文地址:http://www.gorillalogic.com/books/fonemonkey-doc/setup-guide/preparing-an-app
 
略有改动,加入了一些必要的注意点;
 
(2)在Instrument中编写脚本进行测试(不能录制)
 
          1、打开Instruments工具
 
                一般路径:/Developer/Applications/instruments
 
          2、选择Automation
 

2、添加测试脚本(如果有现成的,可以导入)

3、编写脚本
 
      给出测试几个按钮点击的脚本
var target = UIATarget.localTarget(); //变量用来表示这是一个测试系统

var application = target.frontMostApp(); //确定要测试的程序

var window = application.mainWindow(); //确定要册书的窗口

window.logElementTree(); //获取要测试界面的所有元素

var bt=window.buttons()[2];


if(bt.isValid()){

bt.tap();

}

else{

UIAlogger.logMessage("some error show!");

}

4、导入程序的xx.app包

5、点击Record将会直接通过脚本去点击程序中的一个按钮 
 
        程序设计成:一个页面,页面上有几个按钮就可以了(我用的ios5.0虚拟机);
 
参考文档:http://developer.apple.com/library/ios/#documentation/DeveloperTools/Reference/UIAutomationRef/_index.html
 
希望能给同志们有所帮助;  
 
谢谢!

---------------------------------------------------------------------------------------------

转自:http://blog.csdn.net/goodpress/article/details/7223909#reply

 

 
527°/5278 人阅读/0 条评论 发表评论

登录 后发表评论