App测试总脚本1.10(使用了列表推导式)

# -*- coding: utf-8 -*-
# @Time : 2019/7/31 8:57
# @Author : Aluosen
# @FileName: App测试总脚本.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/Aluosen'
# @Software: PyCharm
import os
while True:
#选择App
print('-'*64)
print('APP名称:')
print('\t1.微信')
print('\t2.链家')
print('\t3.宝骏')
print('\t4.退出程序')
App_choose = input('请选择您要开启的APP名称【1-4】:')
print('-'*64)
#微信
if App_choose=='1':
print('\t正在开启微信……')
content=os.popen('adb shell am start -W com.tencent.mm/.ui.LauncherUI')
print('\t微信开启成功')
Appchoose='com.tencent.mm'
#链家
elif App_choose=='2':
print('\t正在开启链家……')
content=os.popen('adb shell am start -W com.homelink.android/.SplashScreenActivity')
print('\t链家开启成功')
Appchoose ='com.homelink.android'
#宝骏
elif App_choose=='3':
print('\t正在开启宝骏……')
content=os.popen('adb shell am start -W com.tjd.Baojun/.Loading')
print('\t宝骏开启成功')
Appchoose ='com.tjd.Baojun'
#退出程序
elif App_choose == '4':
print('\t正在退出程序')
break
else:
print('您的输入有误,请重新输入')
continue
print('\t请稍候……')
ThisTime=''.join([line.split()[1] for line in content.readlines() if 'ThisTime:' in line])
while True:
#选择要进行的操作
print('-' * 64)
print('操作选择:')
print('\t1.关闭App')
print('\t2.App退到后台')
print('\t3.查看启动时间')
print('\t4.查看Cpu')
print('\t5.获取进程号PID')
print('\t6.查看进程流量')
print('\t7.查看进程占用内存')
print('\t8.查看电量')
print('\t9.返回')
Operation_choose = input('请选择您要进行的操作【1-9】')
print('-' * 64)
#关闭App
if Operation_choose == '1':
print('\t正在关闭App……')
os.popen('adb shell am force-stop %s' % Appchoose)
break
#程序转到后台
elif Operation_choose == '2':
print('\t正在退到后台……')
os.popen('adb shell input keyevent 3')
print('\t退到后台成功')
continue
#查看启动时间
elif Operation_choose=='3':
print('\t启动时间(ms):',ThisTime)
continue
#查看Cpu
elif Operation_choose == '4':
print('\t查看Cpu:')
content = os.popen('adb shell dumpsys cpuinfo|findstr %s' % Appchoose)
[print(line) for line in content.readlines() if '%s: '%Appchoose in line]
continue
#获取进程号
elif Operation_choose == '5':
print('\t正在获取进程号Pid')
content = os.popen('adb shell dumpsys cpuinfo|findstr %s' % Appchoose)
print('\t进程号Pid:',''.join([line.split()[1].split('/')[0] for line in content.readlines() if '%s: ' % Appchoose in line]))
continue
#获取进程流量
elif Operation_choose == '6':
print('\t查看进程流量:')
content = os.popen('adb shell dumpsys cpuinfo|findstr %s' % Appchoose)
pid = ''.join([line.split()[1].split('/')[0] for line in content.readlines() if '%s: ' % Appchoose in line])
content = os.popen('adb shell cat /proc/%s/net/dev' % pid)
line=''.join([line for line in content.readlines() if "eth" in line])
Receiverbytes, Transmitbytes = line.split()[1], line.split()[9]
Titlebytes = int(Receiverbytes) + int(Transmitbytes)
print("\t接收字节数:", Receiverbytes)
print("\t传输字节数:", Transmitbytes)
print("\t总流量(byte):", Titlebytes, 'byte')
print("\t总流量(Mb):", Titlebytes / 1024, 'Mb')
continue
#获取进程占用内存
elif Operation_choose == '7':
print('\t进程占用内存:')
content=os.popen('adb shell dumpsys meminfo %s'%Appchoose)
print('\tTOTAL:', ''.join([line.split()[1] for line in content.readlines() if 'TOTAL' in line]))
continue
#获取剩余电量
elif Operation_choose == '8':
print('\t获取剩余电量:')
os.popen('adb shell dumpsys battery set status 1')
content=os.popen('adb shell dumpsys battery')
print('\t剩余电量:',''.join([line.split()[1] for line in content.readlines() if 'level' in line]))
continue
elif Operation_choose == '9':
print('\t返回')
break
else:
print('\t您的输入有误,请重新输入')
continue


猜你喜欢

转载自www.cnblogs.com/Aluosen/p/11289230.html
今日推荐