【Python】Camera拍照休眠唤醒测试
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os
import sys
import time
rebootCount = int(input("请输入测试次数:"));
print ("你输入的次数是: ", rebootCount)
def copyright():
print("\n")
print("Lenovo R&T automated testing script version 0.1")
def usage():
print("Usage : python " + sys.argv[0])
print(" Please turn on the device and make sure that you can use ADB Command.")
print("\n")
def find_device():
# os.system('adb kill-serve')
# os.system('adb start-server')
# os.system('adb root')
# os.system('adb remount')
print("adb devices")
os.system('adb devices')
def open_camera():
print("打开相机:")
os.system('adb shell am start -a android.media.action.STILL_IMAGE_CAMERA')
def back():
print("返回")
os.system('adb shell input keyevent 4')
def backToHome():
print("返回主页")
os.system('adb shell input keyevent 3')
def menulist():
print("菜单")
os.system('adb shell input keyevent 82')
def vol_up():
print("音量加")
os.system('adb shell input keyevent 24')
def vol_dn():
print("音量减")
os.system('adb shell input keyevent 25')
def mute():
print("扬声器静音")
os.system('adb shell input keyevent 164')
def take_photo():
print("拍照")
os.system('adb shell input keyevent 27')
def get_log(name,count):
os.system('adb logcat -t 50000 > '+name+count+'.log')
def screen_downup():
os.system('adb shell input keyevent 26')
def power_downup():
os.system('adb shell sendevent /dev/input/event0 1 116 1')
os.system('adb shell sendevent /dev/input/event0 0 0 0')
os.system('adb shell sendevent /dev/input/event0 1 116 0')
os.system('adb shell sendevent /dev/input/event0 0 0 0')
E_BADARGS = 1
copyright()
usage()
find_device()
message = os.popen('adb devices').readlines()
print(message)
count=len(message)
if (count < 3):
print("can't find device|找不到设备")
sys.exit(E_BADARGS)
else: #打开相机拍照
for i in range(0,rebootCount):
open_camera()
time.sleep(10)
take_photo()
time.sleep(10)
back()
count=str(i)
get_log(name="take_photo",count=count)
print("take photo finish\n")
#Camera一直开,休眠唤醒屏幕
for i in range(0,rebootCount):
open_camera()
time.sleep(10)
print("screen down up")
screen_downup()
time.sleep(10)
screen_downup()
time.sleep(10)
count=str(i)
get_log(name="screen_down_up",count=count)
print("screen_down_up finish\n")
#Camera一直开,模拟按power键
# for i in range(1,5):
# open_camera()
# time.sleep(10)
# print("power down up")
# power_downup()
# time.sleep(10)
# power_downup()
# time.sleep(10)
# count=str(i)
# get_log(name="power_down_up",count=count)
# print("power_down_up finish\n")
# back()
#Camera一直开,模拟按音量、静音键
for i in range(0,rebootCount):
open_camera()
time.sleep(10)
print("vol up")
vol_up()
time.sleep(10)
print("vol down")
vol_dn()
time.sleep(10)
mute()
count=str(i)
get_log(name="vol_down_up",count=count)
print("vol_down_up finish\n")
backToHome()
menulist()
back()
【Python】Camera拍照休眠唤醒测试的更多相关文章
- android Camera拍照 及 MediaRecorder录像 预览图像差90度
Camera拍照: 今天做照相机程序,结果写好了发现出问题了,预览的图像差90度.相关源代码如下: Camera.Parameters params = camera.getParameters(); ...
- 详细介绍windows下使用python pylot进行网站压力测试
windows下使用python进行网站压力测试,有两个必不可少的程序需要安装,一个是python,另一个是pylot.python是一个安装软件,用来运行python程序,而pylot则是pytho ...
- WINCE6.0+ILI9806E休眠唤醒显示异常问题
我们的系统WINCE6.0,它支持睡眠和唤醒,目的是想在不使用的时候让设备进入睡眠状态,降低功耗,我们遇到的问题就是设备正常启动后正常显示,但睡眠然后唤醒后要么显示白屏要么是条纹状白屏,如下图: 图1 ...
- Python Web 性能和压力测试 multi-mechanize
http://www.aikaiyuan.com/5318.html 对Web服务做Performance & Load测试,最常见的工具有Apache Benchmark俗称ab和商用工具L ...
- android 休眠唤醒机制分析(二) — early_suspend
本文转自:http://blog.csdn.net/g_salamander/article/details/7982170 early_suspend是Android休眠流程的第一阶段即浅度休眠,不 ...
- android 休眠唤醒机制分析(一) — wake_lock
本文转自:http://blog.csdn.net/g_salamander/article/details/7978772 Android的休眠唤醒主要基于wake_lock机制,只要系统中存在任一 ...
- [置顶] android系统如何在静音模式下关闭camera拍照声音(2)
之前写过一篇“android系统如何在静音模式下关闭camera拍照声音”的博客,今天来写他的续篇,继续探讨这个问题. 公司新需求,要求在camera应用中添加一个开关,可以进行拍照声音的关闭和开启. ...
- Python网络数据采集7-单元测试与Selenium自动化测试
Python网络数据采集7-单元测试与Selenium自动化测试 单元测试 Python中使用内置库unittest可完成单元测试.只要继承unittest.TestCase类,就可以实现下面的功能. ...
- Android开发技巧——Camera拍照功能
本篇是我对开发项目的拍照功能过程中,对Camera拍照使用的总结.由于camera2是在api level 21(5.0.1)才引入的,而Camera到6.0仍可使用,所以暂未考虑camera2. 文 ...
随机推荐
- [Angular] Implementing a ControlValueAccessor
So when you need to create a ControlValueAccessor? When you want to use a custom component as form c ...
- [React Router v4] Render Nested Routes
With React Router v4 the entire library is built as a series of React components. That means that cr ...
- Qt 无标题无边框程序的拖动和改变大小
最近做项目遇到的问题,总结下. 有时候我们觉得系统的标题栏和按钮太丑太呆板,想做自己的标题栏以及最大化.最小化.关闭,菜单按钮,我们就需要 setWindowFlags(Qt::FramelessWi ...
- Erlang 杂记
学习Erlang的时候在书的留白处随手记录了一些东西,还有一些记录在了demo的注释里面,今天抽时间整理出来了一部分,分享一下. Erlang的设计哲学是为每一个独立的事件创建一个新进程. Erlan ...
- Web前端实践经验总结
最近用了不少业余时间,在加强Web前端.有个很大的感触就是,web前端比较麻烦,主要是布局和样式.最主要的原因,还是之前实践得比较少,熟能生巧,不得不服啊. 自己从头开始写布局和css太费心思了,比较 ...
- 获取全局上下文(getApplicationContext)_创建Shared Preference工具类_实现自动登录
获取全局上下文(getApplicationContext)_创建Shared Preference工具类_实现自动登录 ===========================获取全局上下文(getA ...
- CSS拾遗(一)
重新看<精通CSS(第二版)>做一些记录,方便今后巩固. 1.外边距叠加 只有普通文档流中块框的垂直外边距才会发生外边距叠加.行内框.浮动框.或绝对定位框之间的外边距不会叠加. 2.相对定 ...
- 前端常见算法JS实现
算法是程序的灵魂,一个优秀的前端工程师对算法也是要有所了解的. 排序算法 1. 冒泡排序 //冒泡排序 function bubbleSort(arr){ var i = j = 0; for(i=1 ...
- 编译和使用jasper库的一个注意事项
作者:朱金灿 来源:http://blog.csdn.net/clever101 由于jasper库是一个跨平台库,而Windows的VC编译器和Linux的GCC编译器的头文件并不完全一致(可能因为 ...
- C# 从零开始写 SharpDx 应用 控制台创建 Sharpdx 窗口
原文:C# 从零开始写 SharpDx 应用 控制台创建 Sharpdx 窗口 版权声明:博客已迁移到 http://lindexi.gitee.io 欢迎访问.如果当前博客图片看不到,请到 http ...