import time
import os
import re
from com.android.monkeyrunner import MonkeyRunner as mr
from com.android.monkeyrunner import MonkeyDevice as md
from com.android.monkeyrunner import MonkeyImage as mi regrex=r"(.*)\.apk"
dir="E:\howdoTest\marketLogoTest\packages"
activity="com.howdo.commonschool/com.howdo.commonschool.activities.WelcomeActivity"
device=mr.waitForConnection()
if os.path.exists(dir) and os.path.isdir(dir) :
for packageFile in os.listdir(dir):
if re.match(regrex, packageFile):
packageFilePath = os.path.join(dir,packageFile)
device.installPackage(packageFilePath)
time.sleep(2)
print "APK finish setup...."
time.sleep(1)
print "Start testing...."
device.startActivity(component=activity)
mr.sleep(1)
snapshotLogo=device.takeSnapshot()
#snapshotLogoName="e:\\"+packageFile+"snapshotLogo.png"
snapshotLogo.writeToFile('E:\howdoTest\marketLogoTest\snapshots\\'+packageFile+'snapshotLogo.png','png')
mr.sleep(10)
device.touch(195,1174,"DOWN_AND_UP")
mr.sleep(1)
device.type("*****")
mr.sleep(1)
device.touch(134,395,"DOWN_AND_UP")
mr.sleep(1)
device.type("*****")
mr.sleep(1)
device.touch(348,600,"DOWN_AND_UP")
mr.sleep(5)
device.touch(51,107,"DOWN_AND_UP")
mr.sleep(2)
device.touch(158,805,"DOWN_AND_UP")
mr.sleep(2)
device.touch(195,335,"DOWN_AND_UP")
time.sleep(1)
snapshotIsnew=device.takeSnapshot()
snapshotIsnew.writeToFile('E:\howdoTest\marketLogoTest\snapshots\\'+packageFile+'snapshotIsnew.png','png')
mr.sleep(1)
device.touch(184,555,"DOWN_AND_UP")
mr.sleep(1)
snapshotVersion=device.takeSnapshot()
snapshotVersion.writeToFile('E:\howdoTest\marketLogoTest\snapshots\\'+packageFile+'snapshotVersion.png','png')
time.sleep(1)
print "Finish testing..."
device.removePackage("com.howdo.commonschool")
time.sleep(2)
print packageFile+" finish unsetup...." else:
print 'path %s is not existed or is not a directory' %dir

  

【monkeyrunner】monkeyrunner 实例的更多相关文章

  1. [转] android自动化测试之MonkeyRunner使用实例(三)

    一.使用CMD命令打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备. 1.1  用Elipse打开Android模拟器或在CMD中 ...

  2. 【转】android自动化测试之MonkeyRunner使用实例(三)

    一.使用CMD命令打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备. 1.1  用Elipse打开Android模拟器或在CMD中 ...

  3. Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例

    ---------------------------------------------------------------------------------------------------- ...

  4. monkeyrunner之环境搭建及实例(三)

    Monkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器. 一.Monkeyrunner简介 1.MOnkeyrunner相对Mo ...

  5. Android自己主动化測试之Monkeyrunner用法及实例

    眼下android SDK里自带的现成的測试工具有monkey 和 monkeyrunner两个.大家别看这俩兄弟名字相像,但事实上是完全然全不同的两个工具,应用在不同的測试领域.总的来说,monke ...

  6. Android自动化测试之Monkeyrunner使用方法及实例

    目前Android SDK里自带的现成的测试工具有monkey 和 monkeyrunner两个.大家别看这俩兄弟名字相像,但其实是完完全全不同的两个工具,应用在不同的测试领域.总的来说,monkey ...

  7. monkeyrunner API接口文档内容

    用python编写脚本   1.导入模块: MonkeyRunner MonkeyDevice MonkeyImage ps:如果给导入模块起别名,就应该使用别名,而不能使用原名,否则会出现错误. f ...

  8. Android自动化测试之Monkeyrunner学习笔记(一)

    Android自动化测试之Monkeyrunner学习笔记(一) 因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyr ...

  9. android自动化之monkeyrunner

    一.使用CMD命令打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器或连上设备,不然monkeyrunner无法连接设备. 1.1  用Elipse打开Android模拟器或在CMD中 ...

  10. Android自动化压力测试快速入门教程(图解)——MonkeyRunner

    一.MonkeyRunner测试环境配置(转自) 1.  android-sdk 下载地址:http://www.android-doc.com/sdk/index.html 下载完成后,只需要解压就 ...

随机推荐

  1. Java面试知识点总结及解析

    声明:有人说, 有些面试题很变态,个人认为其实是因为我们基础不扎实或者没有深入.本篇文章来自一位很资深的前辈对于最近java面试题目所做的总结归纳,有170道题目 ,知识面很广 ,而且这位前辈对于每个 ...

  2. Installing VirtualBox DKMS in Kali 2.0

    Kali linux is one of the mainly used operating system by the Ethical hackers and information securit ...

  3. CONFLICT (modify delete)冲突修复

    Demo git:(test) git merge feature CONFLICT (modify/delete): path/to/path/config.inc.php deleted in H ...

  4. 使用 if 表达式

    由于 if 本质上是一个原函数,它的返回值就是满足条件分支表达式的值,因此,if 表达式也可以用作内联函数.我们以 check_positive( )为例进行说明.尽管条件表达式中不另写 return ...

  5. Mysql中FIND_IN_SET和REPLACE函数简介

    一  FIND_IN_SET() SELECT * from u_user where FIND_IN_SET('32',tags) 上面的sql是精确查找,查找表中tags中含有32的记录(注意这里 ...

  6. WPF——RenderTransform特效

    WPF: RenderTransform特效 WPF中的变形(RenderTransform)类是为了达到直接去改变某个Silverlight对象的形状(比如缩放.旋转一个元素)的目的而设计的,Ren ...

  7. bzoj-4870-组合dp+矩阵幂

    4870: [Shoi2017]组合数问题 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 829  Solved: 446[Submit][Statu ...

  8. Less开发指南(三)- 代码文件跟踪调试

    案例背景:在大型网站中,css样式划分为多个模块文件,如reset.css,layout.css,skin.css等等(颗粒化越小,样式重用率越高),页面需要的时候引入它们即可! 回到less项目中这 ...

  9. IOS-网络(JSON解析数据与XML解析数据)

    一.JSON解析数据 // // VideoModel.h // IOS_0130_网络视频 // // Created by ma c on 16/1/30. // Copyright © 2016 ...

  10. java并发编程:线程安全管理类--原子操作类--AtomicLong

    可以用原子方式更新的 long 值.有关原子变量属性的描述,请参阅 java.util.concurrent.atomic 包规范.AtomicLong 可用在应用程序中(如以原子方式增加的序列号), ...