android tv wifi设置密码,android TV版 wifi 压力测试
代码完全模拟按键进行操作。
1.重启设备
2.等待设备adb
3.移动到wifi设置菜单
4.连接wifi
5.检测网络是否连通
6.抓取log和截图,并把log文件压缩。
7.忘记wifi密码
8.重启设备,重复步骤1.
#-*-coding=utf-8-*-
__author__ = 'rocky chen'
from uiautomator import device as d
import time,subprocess,re,os
def zip_log(filename):
filename="count_%d.log" %filename
cmd='zip %s.zip %s' %(filename,filename)
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
os.remove(filename)
def move_operation(action_key):
cmd='adb shell input keyevent %s' %action_key
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
print out,err
def basic_info():
for k, v in d.info.items():
print k,v
#print info
def check_connect():
cmd='adb shell ping www.qq.com'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
print out,err
def wifi_connect(count):
print "WIFI connect in LOOP %d" %count
d.press.home()
#move_operation('KEYCODE_HOME')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.right()
#move_operation('KEYCODE_DPAD_RIGHT')
d.press.enter()
#move_operation('KEYCODE_ENTER')
d.press.enter()
#move_operation('KEYCODE_ENTER')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
d.press.enter()
#move_operation('KEYCODE_ENTER')
cmd='adb shell input text xiaomi2g'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
cmd='adb shell input keyevent KEYCODE_ESCAPE'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
cmd='adb shell input keyevent KEYCODE_ENTER'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
d.press.down()
d.press.down()
#move_operation('KEYCODE_DPAD_DOWN')
#d.press.down()
d.press.enter()
#move_operation('KEYCODE_ENTER')
cmd='adb shell input text test1234'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
cmd='adb shell input keyevent KEYCODE_ENTER'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
time.sleep(25)
def check_wifi_list(count):
print "check wifi list in loop %d" %count
d.press.up()
d.press.up()
d.press.up()
d.press.up()
d.press.up()
d.press.enter()
d.press.enter()
time.sleep(3)
print "########### IN LOOP %d #################" %count
cmd='adb shell screencap -p /sdcard/%d.png' %count
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
cmd='adb pull /sdcard/%d.png .' %count
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
p.wait()
def check_connection(count):
print "check connection %d" %count
fp=open("capture.log",'w')
fp.write('\n')
cmd='adb shell ping -c 4 www.baidu.com'
p=subprocess.Popen(cmd,stdout=fp,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
print out
print err
p.wait()
fp.flush()
fp.close()
fp=open("capture.log",'r')
return_data=fp.read()
#print return_data
pettern=re.compile(r'100\% packet loss')
t=pettern.search(return_data)
#print t
if t:
print "Failed"
else:
print "Passed"
try:
os.remove("capture.log")
except:
print "Delete capture.log failed"
def reboot_device(count):
print "reboot device in loop %d" %count
cmd='adb reboot'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
print out,err
p.wait()
cmd='adb wait-for-device'
p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
print out,err
p.wait()
print "Reboot done"
time.sleep(60)
def forget_password(count):
print "Forget wifi in loop %d" %count
d.press.home()
d.press.down()
d.press.down()
d.press.down()
d.press.right()
d.press.enter()
d.press.enter()
d.press.enter()
d.press.down()
d.press.down()
d.press.enter()
d.press.enter()
time.sleep(1)
def get_log(count):
cmd="adb logcat -v time >count_%d.log &" %count
'''p=subprocess.Popen(cmd,stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True)
out,err=p.communicate()
print out,err
'''
os.system(cmd)
if __name__=="__main__":
#check_connection()
#get_log(2)
#basic_info()
for i in range(3000):
reboot_device(i)
wifi_connect(i)
get_log(i)
check_wifi_list(i)
check_connection(i)
forget_password(i)
zip_log(i)
#move_operation('KEYCODE_HOME')
#move_operation('KEYCODE_DPAD_DOWN')
android tv wifi设置密码,android TV版 wifi 压力测试相关推荐
- android 重置偏好设置密码,android – 按下“重置应用偏好设置”后,我的应用的所有权限都被撤消...
我开发了一个应用程序并支持Android 6.0.当我在"设置"中重置应用偏好设置时 – >应用 – >重置应用偏好设置,我的应用的所有权限都被撤消,应用不会重新启动. ...
- Android App压力测试
前言:写这篇文章的目的,一是因为不少同学作为Android开发,很少会自己去做压力测试,不了解相关的技术,不知道压力测试是什么.怎么工作的:二是询问过身边的一些测试同学,他们进行压力测试的时候,很多情 ...
- android app wifi密码,无广告查看wifi密码的软件-WiFi密码查看清爽版app下载V999安卓版-西西软件下载...
WiFi密码查看清爽版app是一款利用系统接口来查看链接的WiFi密码应用,实现密码查看功能的软件,WiFi密码查器看还聚合多种wifi辅助工具,wifi测速.流量统计.wifi信号增强.设备扫描.应 ...
- Android开机向导setupwizard,设置系统语言,WiFi向导
Android的框架设计有考虑到开机向导这一场景,因此我们实现开机向导参考Android的Provision.apk Provision: MSM8976/repo/packages/apps/Pro ...
- lg android tv刷机,LG TV Remote-webOS
LG TV Remote-webOS 介绍 LG TV Remote-webOS [Caution] This application is compatible only with LG webOS ...
- android n wifi scan,Android WiFi扫描
Wifi扫描 权限方面 必须权限如下: ACCESS_WIFI_STATE(用于扫描结束后读取wifi信息) CHANGE_WIFI_STATE(用于扫描WiFi列表) 除必须权限外,根据系统版本,还 ...
- android+tv+自动切换,Android TV 重写GridView,实现焦点放大效果
关于缩放,使用了view.setScaleX/Y 方法,api11以上即可. 重写dispatchDraw(),绘制选中项的焦点效果.(注意带阴影的焦点图需要微调偏移量) 要将选中项绘制显示在顶层,所 ...
- android wlan0 网卡过程,android WIFI网络驱动之wpa_supplicant程序详解
http://blog.csdn.net/wh_19910525/article/details/7392147 2012 目前可以使用wireless-tools 或wpa_supplicant工具 ...
- Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面
http://www.mobiletuts.me 获取网络连接状态 随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能. An ...
最新文章
- 电脑文件加密_电脑文件加密软件哪个好?企业加密软件排行榜
- 蚁群:微型机器人的社区
- python 字符串前面加 f
- Android MVC,MVP,MVVM模式入门——重构登陆注册功能
- I/O异步之I/O完成端口
- 电动力学每日一题 2021/10/10
- 360浏览器 ajax取缓存,Angularjs在360兼容模式下取数据缓存问题的解决办法
- hibernate中的id特殊属性hilo剖解(多用于继承关系)
- c语言 gbk字模点阵数组,GBK点阵显示字库的制作和使用
- python图像处理大全
- Nginx 简单命令
- python云计算服务_阿里云python 云计算
- 基于Python3-Pygame的乒乓球游戏
- 江苏专转本计算机大类(计算机理论基础A)知识点
- NTPWEdit通过直接修改SAM文件离线更改密码
- 电感耦合等离子体质谱仪技术分析环境各方面的污染
- Excel保护怎么解除保护
- 08-图7 公路村村通(浙大数据结构)
- 大一C语言总结贴(持更) Part1 输出菱形
- JAVA-------计算机基础与准备阶段
热门文章
- 了解这些后,再去决定要不要买mac
- 表情识别综述论文《Deep Facial Expression Recognition: A Survey》中文翻译
- 【关于游戏中多人交互业务无回调写法的2种方案】1.xdb 2.world服+只读redis+队列
- 执行update和delete的SQL语句时,报错:Error Code: 1175. You are using safe update mode and you tried to update a
- 凯撒密码加密解密——Java代码(密码学)
- Qt中的颜色设置——Qpalette,Qcolor,Qbrush等
- 生与死,苦与乐,一念之间
- Service启动泄露异常:android.app.ServiceConnectionLeaked
- [明日方舟抽卡数据库]开发日志(二)
- nginx之ReWrite语法