自动化基础测试_第1页
自动化基础测试_第2页
自动化基础测试_第3页
自动化基础测试_第4页
自动化基础测试_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、自动化自动化培训大纲培训大纲 测试开发环境搭建 CTS Monkey Monkeyrunner 自动化测试的概念 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。测试开发环境搭建 ubuntu安装注意事项 编译环境配置 开发工具的配置eclipse virtualbox安装CTS Android的CTS测试,英文为Compatibility Test Suite,意为兼容性 测试。只有

2、通过CTS测试的设备才有可能获得Android的商标和享受Android Market的权限.在进行CTS测试之前,应该确保已安装了,JDK,SDK ,eclipse,前面我们已经完成了测试开发环境搭建。注:CTS测试只能在LINUX系统下进行。CTS环境搭建CTS测试分android2.3和android4.0CTS环境搭建下载CTS包http:/ ;下载后解压即可。也可以通过编译Android源代码的方式获得。在android源代码目录下输入make cts命令来编译CTS,之后会在out/host/linux-x86/cts/下生成android-cts文件夹。这个文件夹就是 Compa

3、tibility Test Suit。(这种方法我还没有试过)设置环境变量,可直接在linux的shell中输入export PATH=“$PATH:/my_path”其它my_path就是stratcts的路径,如我的是/home/tang/endroid_env/cts/android-cts/tools/startcts,其中引号是双划线,非中文引号 在手机或者模拟器上安装CtsDelegatingAccessibilityService.apk和CtsDeviceAdmin.apk 这个包在 android-cts/repository/testcases中。可以直接在手机里安装,也可

4、通过命令安装 adb install + 包名 CTS环境搭建4.去官网下载android-cts-media-1.0,网址:http:/ 手机或模拟器的设置:1. 进入settings-Privacy-Factory data reset,对平台进行reset一次 2. 进入settings-Wireless & networks,连接AP (AP需要连外网),打开Bluetooth3. 进入settings-display-screen timeout,设为never timeout,如果没有这个选项,则设为30 minutes4. 进入settings-display,勾选auto-ro

5、tate screen5. 进入settings-applications-development,勾选USB debugging, stay awake和allow mock locations三项6. 进入settings-accessibility,勾选accessibility和CtsDelegatingAccessibilityService两项7. 进入settings-language & keyboard-select lanuage,设为English(United States)8. 平台插入一张TF卡(最好是空卡)修改startcts中的SDK_ROOT 这个只针对.的,

6、进入android/out/host/linux-x86/cts /android-cts/repository/tools目录下,修改startcts脚本文件。将脚本中的SDK_ROOT该成自己的android SDK路径.$cd home/tester /cts/android-cts/repository/tools $vim startcts修改脚本中出现的第一个SDK_ROOT,如“SDK_ROOT=/home/tang/android_env/android-sdk-linux_x86,同时可修改host_config.xml中的 把这个值改成。手机测试时就不会重启了,如果不改,默

7、认是执行200case重启一次 .的不须要配置, 直接运行cts-tradefed这个即可。文件和2.3同目录CTS测试 现在我们可以进行CTS测试了,直接在shell中输入startcts(4.0的输入cts-tradefed )启动CTS测试,如果提示找不到文件,第一:环境变量设置有错,我们可以到startcts的路径中输入./startcts,在没有设置环境变量的情况下同样可以使用。出现如下提示说明运行成功:Android2.3时进入运行CTS的界面tangtang-desktop:$ startctsAndroid CTS version 2.3_r5Device(0123456789

8、ABCDEF) connected /注:红包部分会设备ID号,视情况而定cts_host cts_host Android4.0时进入运行CTS的界面tzbtzb:/share/CTS/4.0/android-cts/tools$ ./cts-tradefed Android CTS 4.0.3_r2cts-tf CTS(2.3)中常用的几个命令 在“cts_host ”提示符下输入命令,以下为几个常用的命令 help查看所有 exit退出 ls -p列出所有的测试包 ls -plan列出所有的测试方案 start -plan plan_name运行一个测试方案, 如:start plan

9、CTS start -plan plan_name -package package_name运行一个特定的测试包,如:start -plan CTS -package android.bluetoothCTS(4.0)中常用的几个命令 在“cts_host ”提示符下输入命令,以下为几个常用的命令 help查看所有 exit退出 l packages列出所有的测试包 l p列出所有的测试方案 run cts -plan test_plan_name运行一个测试方案, 如:run cts plan CTS run cts -class/-c -method/-m :运行一个特定的测试包,如:s

10、tart cts -c package -m android.bluetooth查看测试报告 运行测试时,在CTS运行界面能看到测试报告与运行状况。测试完成后可在android-cts/repository/results/下生成详细的测试报告和一些附加信息,其中用日期和时间命名的文件夹下为所有的测试结果,同时文件夹也会被打成一个对应的.zip包方便提交。用浏览器打开.xml文件(默认就是,直接双击)就可以查看所用的测试报告了monkey一、Monkey测试简介二、Monkey程序介绍三、Monkey命令的简单帮助四、Monkey命令参数介绍Monkey测试简介1.monkey可以直接在XP上

11、运行,只要XP上能用adb,即可使用 2.Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。Monkey程序介绍1) Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar;2) Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey;这

12、样就可以通过在shell窗口中执行: adb shell monkey +命令参数来进行Monkey测试了。Monkey命令的简单帮助要获取Monkey命令自带的简单帮助,在linux的shell中执行命令: adb shell monkey help 对于monkey可测试的包可以通过adb来查看: adb shell cd data/data 可测试的包都在这里面了Monkey命令参数介绍参数: -p参数-p用于约束限制,用此参数指定一个或多个包(Package,即App)。指定包之后,Monkey将只允许系统启动指定的APP。如果不指定包,Monkey将允许系统启动设备中的所有APP。*

13、 指定一个包: adb shell monkey -p com.htc.Weather 100说明:com.htc.Weather为包名,100是事件计数(即让Monkey程序模拟100次随机用户事件)。* 指定多个包:adb shell monkey -p com.htc.Weather p com.htc.pdfreader -p com.htc.photo.widgets 100* 不指定包:adb shell monkey 100说明:Monkey随机启动APP并发送100个随机事件。2) 参数: -v用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别,分别对应的参数如

14、下表所示:日志级别 Level 0 示例 adb shell monkey -p com.htc.Weather v 100说明 缺省值,仅提供启动提示、测试完成和最终结果等少量信息日志级别 Level 1示例 adb shell monkey -p com.htc.Weather v -v 100说明 提供较为详细的日志,包括每个发送到Activity的事件信息 日志级别 Level 2示例 adb shell monkey -p com.htc.Weather v -v v 100说明 最详细的日志,包括了测试中选中/未选中的Activity信息测试用的其它monkey其它参数:参数: -

15、s用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。参数: -throttle 用于指定用户操作(即事件)间的时延,单位是毫秒;参数: -ignore-crashes用于指定当应用程序崩溃时(Force & Close错误),Monkey是否停止运行。如果使用此参数,即使应用程序崩溃,Monkey依然会发送事件,直到事件计数完成。参数: -ignore-timeouts用于指定当应用程序发生ANR(Application No Responding)错误时,Monkey是否停止运行。如果使用此参数,即使应用程序发生ANR错误,Monkey依然

16、会发送事件,直到事件计数完成。 还有很多命令,大家可以到网上去查资料。(可见附件)monkeyrunner Monkeyrunner只有能用adb的电脑上都能运行,我们从以下几方面对基进行介绍: Monkeyrunner简介 monkeyrunner工具同Monkey工具的差别 monkeyrunner的测试类型 运行monkeyrunnerMonkeyrunner简介monkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。通过monkeyrunner,您可以写出一个Python程序去安装一个Android应用程序或测试包

17、,运行它,向它发送模拟击键,截取它的用户界面图片,并将截图存储于工作站上。monkeyrunner工具的主要设计目的是用于测试功能/框架水平上的应用程序和设备,或用于运行单元测试套件,但您当然也可以将其用于其它目的Monkeyrunner文件在SDK目录的tools子目录下,运行时,如果没有指定环境变量,需到tools目录下方可执行.monkeyrunner工具同Monkey工具的差别Monkey: Monkey工具直接运行在设备或模拟器的adb shell中,生成用户或系统的伪随机事件流。monkeyrunner: monkeyrunner工具则是在工作站上通过API定义的特定命令和事件控制

18、设备或模拟器。monkeyrunner的测试类型 1、多设备控制:monkeyrunner API可以跨多个设备或模拟器实施测试套件。您可以在同一时间接上所有的设备或一次启动全部模拟器(或统统一起),依据程序依次连接到每一个,然后运行一个或多个测试。您也可以用程序启动一个配置好的模拟器,运行一个或多个测试,然后关闭模拟器。 2、 功能测试: monkeyrunner可以为一个应用自动贯彻一次功能测试。您提供按键或触摸事件的输入数值,然后观察输出结果的截屏 3、回归测试:monkeyrunner可以运行某个应用,并将其结果截屏与既定已知正确的结果截屏相比较,以此测试应用的稳定性。 4、可扩展的自

19、动化:由于monkeyrunner是一个API工具包,您可以基于Python模块和程序开发一整套系统,以此来控制Android设备。除了使用monkeyrunner API之外,您还可以使用标准的Python os和subprocess模块来调用Android Debug Bridge这样的Android工具。运行monkeyrunner 您也可以向monkeyrunner API中添加您自己的类 monkeyrunner工具使用Jython(使用Java编程语言的一种Python实现)。Jython允许monkeyrunnerAPI与Android框架轻松的进行交互。使用Jython,您可以

20、使用Python语法来获取API中的常量、类以及方法。使用monkeyrunner,在shell中输入monkeyerunner,成功进入如下所示:tangtang-desktop:$ monkeyrunnerJython 2.5.0 (Release_2_5_0:6476, Jun 16 2009, 13:33:26) Java HotSpot(TM) 64-Bit Server VM (Sun Microsystems Inc.) on java1.6.0_25下面是一个实例: # 导入此程序所需的monkeyrunner模块from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice # 连接当前设备,返回一个MonkeyDevice对象device = MonkeyRunner.waitForConnection()# 安装Android包,注意,此方法返回的返回值为boolean,由此您可以判断安装过程是否正常,红色部分为你自己在电脑上的路径device.installPackage(myproject/bin/MyApplication.apk)# 运行此应用中的一个活动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论