手机自动化测试简介.ppt
《手机自动化测试简介.ppt》由会员分享,可在线阅读,更多相关《手机自动化测试简介.ppt(23页珍藏版)》请在冰豆网上搜索。
1.手机自动化测试的现状手机自动化测试的现状2.手机实现自动化的主要方法和思路手机实现自动化的主要方法和思路3.目前主要的手机自动化工具目前主要的手机自动化工具4.android手机自动化实现的方法手机自动化实现的方法5.android手机程序开发简介手机程序开发简介手机自动化测试简介手机自动化测试简介手机自动化测试的现状手机自动化测试的现状1.在手机设计公司中,由于手机软件平台设计的封闭性,原本的软件黑盒测试基本是通过手动测试来实现的,只有少数的研发实力很强的公司(西门子,诺基亚等),才会引入部分测试内容的自动化所以在这些公司,通常有着非常多的软件测试工程师岗位;2.最近几年来,智能机的出现让手动测试的难度越来越高;而产品设计周期不断缩短,设计成本的不断压缩,使得各家公司开始尝试用自动化测试来代替人工,以降低测试成本,提高产品质量。
手机自动化测试的现状手机自动化测试的现状主要的软件测试项:
主要的软件测试项:
1.预测试:
有些也叫sanitytest;2.功能测试;3.冲突测试;4.压力测试;5.Stability(MTBF)稳定性测试;6.Monkey测试;7.多语种测试(本地化测试);8.场测;手机自动化是以性能测试优先覆盖,功能测试次之的方式;自动化测试实现的方法基础自动化测试实现的方法基础手机自动化测试的实现主要有三种模式:
手机自动化测试的实现主要有三种模式:
1.开发程序,安装在手机上,直接进行程序测试;2.开发工具,安装在PC上,通过PC与手机通讯,驱动手机动作,模拟操作;3.以上两种兼用;对手机进行对手机进行PC控制和模拟操作需要依赖于以下两个条件:
控制和模拟操作需要依赖于以下两个条件:
1.用户操作的模拟;2.PC和手机间的通讯实现;目前主要的手机自动化工具目前主要的手机自动化工具1.TestQuestTestQuest是一家专门从事手机自动化研究的公司,他们的平台可以对很多手机厂商的产品进行用户操作的模拟。
(移动研究院)。
TQ的实现采用的是PC端控制手机通讯和按键模拟,同时在手机内针对手机平台不同植入agent库,负责PC消息(主要是按键消息)向手机底层消息的转换和转发。
2.各个手机平台的自由的测试框架:
各个手机平台的自由的测试框架:
iOS,window,Android等等3.QTP插件(实现方式插件(实现方式TQ,用的人很少,不知道怎么样),用的人很少,不知道怎么样)android手机自动化实现的方法手机自动化实现的方法1.MonkeyRunnerMonkeyRunner是Android官方提供的一套基于UI的测试工具,他主要用来通过adb通讯连接,从PC上模拟用户操作消息发送给手机,触发手机发生指定的动作;该工具可以提供的用户事件模拟,包括按键和触屏。
另外添加了截图的功能,使用者可以通过编写脚本自行设计测试方法,对手机进行测试。
android手机自动化实现的方法手机自动化实现的方法MonkeyRunner优点:
提供了完整的手机驱动接口,测试者不需要了解驱动原理,只需要写脚本就可以自行进行程序测试;缺点:
同一时间只能驱动单一设备。
android手机自动化实现的方法手机自动化实现的方法2.自行设计手机按键模拟方式:
自行设计手机按键模拟方式:
monkey:
android提供了一个叫做Monkey的工具,这个工具用来向用户界面发送随机模拟事件,进行monkey测试。
monkey工具的实现,说明手机底层存在一套机制,可以接受按键消息,并产生事件模拟;android手机自动化实现的方法手机自动化实现的方法2.自行设计手机按键模拟方式:
自行设计手机按键模拟方式:
一个实验:
一个实验:
C:
Usersadbshell$monkey-port10831083monkey-port10831083CC:
Usersadbforwardtcp:
1083tcp:
1083C:
Userstelnet127.0.0.11083利用左边这个原理,我们利用左边这个原理,我们可以自行代码实现可以自行代码实现monkeyrunner的功能,的功能,并增加多设备多线程的控并增加多设备多线程的控制,制,log监控,结果反馈,监控,结果反馈,报告生成等更多的支持。
报告生成等更多的支持。
android手机自动化实现的方法手机自动化实现的方法3.其他手机平台的自动化实现方式:
其他手机平台的自动化实现方式:
手机平台设计通常都有对外的测试接口,只是并不开放;比如iOS,有自己的测试框架;Symbian也有自己的测试框架;FeatruePhone的自动化测试控制大多数使用AT指令集及扩展来实现;android手机应用程序的开发简介手机应用程序的开发简介1.Android环境搭建环境搭建所需软件:
JDK:
1.6以上Eclipse:
3.4以上AndroidSDK:
http:
/Setup.exe”,选择要安装的API。
4.SDK配置:
将SDK安装文件夹下的tools文件夹的路径加入环境变量“Path”中;5.ADT:
AndroidDevelopmentToolsPlug-in,是Android在Eclipse上的开发工具6.安装ADT:
启动eclipse-Help-勾选SoftwareUpdate和AvaiableSoftware-AddSite-输入地址https:
/dl-SDK安装路径,-OKandroid手机应用程序的开发简介手机应用程序的开发简介2.Android-HelloAndroid
(1)右键NewProject,在“NewProject”对话框中选择AndroidAndroidProjectandroid手机应用程序的开发简介手机应用程序的开发简介2.Android-HelloAndroid
(2)点击“next”按钮,进入“NewAndroidProject”,Projectname中输入“HelloAndroid”,BuildTarget中选择“Android2.0”或其他Applicationname中输入“HelloAndroid”Packagename中输入“com.thunderst.android.helloAndroid”CreateActivity中输入“HelloAndroid”点击“Finish”,HelloAndroid项目创建完成android手机应用程序的开发简介手机应用程序的开发简介2.Android-HelloAndroidsrc/java原代码存放目录原代码存放目录gen/自动生成目录,项目中所有资源的索引文件自动生成目录,项目中所有资源的索引文件目录中存放所有由Android开发工具自动生成的文件。
目录中最重要的就是R.java文件。
这个文件由Android开发工具自动产生的。
Android开发工具会自动根据你放入res目录的xml界面文件、图标与常量,同步更新修改R.java文件。
正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。
R.java在应用中起到了字典的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。
另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。
res/资源目录资源目录在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。
AndroidManifest.xml功能清单文件功能清单文件这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS服务等等)。
另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。
default.properties项目环境信息项目环境信息,一般是不需修改此文件android手机应用程序的开发简介手机应用程序的开发简介2.Android-HelloAndroidandroid手机应用程序的开发简介手机应用程序的开发简介2.Android-HelloAndroidHelloAndroid.java分析:
1.此类必须继承Activity,至少应该覆盖onCreate()方法2.setContentView(R.layout.main)方法设置了此Activity显示的UI3.查看日志的方法:
Log类v:
verbosed:
debugi:
infoe:
errorw:
warn2.Android-HelloAndroidLayout/main.xml分析:
1.UI界面的布局文件2.:
线性版面配置,所有组件由上到下排列android:
orientation表示从上到下垂直排列android:
layout_width当前视图占屏幕的宽度android:
layout_heigth当前视图占屏幕的高度android:
text填充的文字fill_parent填充整个屏幕wrap_content根据文字栏位的大小改变此视图的高或宽android手机应用程序的开发简介手机应用程序的开发简介2.Android-HelloAndroidandroid手机应用程序的开发简介手机应用程序的开发简介R.java分析:
分析:
1.在建立项目自动生成,是只读文件,不能更改,是项目中所有资源的索引文件2.定义了很多常量,这些常量的名字都与res文件夹中的文件名相同3.在项目中加入新的资源时,只要刷新一下该项目,R.java文件便可以自动生成新的资源索引2.Android-HelloAndroidandroid手机应用程序的开发简介手机应用程序的开发简介AndroidManifest.xml分析:
manifest:
根节点xmlns:
命名空间package:
应用程序包application:
application级别组件的根节点application:
icon应用程序图标application:
label应用程序名称activity:
与实际的Activity类对应Intent-filter:
此activity支持的intent值action:
组件支持的Intentactioncategory:
组件支持的IntentCategoryuses-sdk:
此应用程序使用的SDK版本2.Android-HelloAndroidandroid手机应用程序的开发简介手机应用程序的开发简介Values/strings.java分析:
定义了字符串资源android手机应用程序的开发简介手机应用程序的开发简介2.Android架构架构3.应用的生命周期应用的生命周期完全生命周期开始于onCreate()结束于onDestroy()。
可见生命周期开始于onStart()结束于onStop()前台生命周期开始于onResume()结束于onPause()Activity:
1.Android应用最基本的模块,称之为“活动”2.一个activity就是一个单独的屏幕3.每个activity都被实现为一个独立的类,都继承自android.app.Activity4.每个activity都会显示由视图UI组成的用户接口,对事件进行响应android手机应用程序的开发简介手机应用程序的开发简介4.相关资料地址相关资料地址2.http:
/