import codecs
import subprocess
import os
import time
import unittest
from pytestreport import TestRunner
import uiautomator2 as u2
import email
import os
import smtplib
import random
import uiautomator2 as u2
import time
import unittest
from email.mime.application import MIMEApplication
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
import pandas as pd
d=u2.connect_usb(‘928c9031’)
def Homestill(testname,sourcefile,sourcenextfile,memfile,minmaxcpu,minmaxmem):
print(testname+"aaaaaaaaalllllllllll")
os.system('adb shell top >>'+sourcefile)
os.system(' cat ' +sourcefile+'| grep -aiE com.baidu.navia+ >>'+sourcenextfile)
cpu = " cat " + sourcenextfile + "|awk '{sum+=$9} END {print sum/NR}'"
resultavg = subprocess.Popen(cpu, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
stravg = str(resultavg)[2:5]
print("cpu的平均值0000")
print(stravg)
infopen = open(sourcenextfile, 'r', encoding="utf-8") # 打开本体文件
outfopen = open(memfile, 'w', encoding="utf-8") # 打开写入文件
lines = infopen.readlines()
for line in lines: # 按行读取
for db in line: # 按字读取
if db == 'M':
continue
outfopen.write(db) # 写入文件
infopen.close() # 关闭文件
outfopen.close() # 关闭文件
mem = " cat " + memfile + "|awk '{sum+=$6} END {print sum/NR}'"
resultavg = subprocess.Popen(mem, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
print("mem的平均值0000")
print(int(resultavg[0:3]))
## cpu
onedate="awk '{print $9}'"+sourcenextfile +">>"+minmaxcpu
subprocess.Popen(onedate, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
'''
maxcpu="'sed'/^$/d'"+minmaxcpu+ "| awk 'NR==1{max=$1;next}{max=max>$1?max:$1}END{print max}'"
maxcpuresult=subprocess.Popen(maxcpu, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
print("maxcpu and mincpu",maxcpuresult)
mincpu = "'sed'/^$/d'" + minmaxcpu + "| awk 'NR==1{min=$1;next}{min=min<$1?min:$1}END{print min}'"
mincpuresult=subprocess.Popen(mem, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
print("maxmem and minmem", mincpuresult)
'''
mem
onedate = "awk '{print $6}"+sourcenextfile+">>"+minmaxmem
subprocess.Popen(onedate, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
'''
maxmem = "'sed'/^$/d'" + minmaxmem + "| awk 'NR==1{max=$1;next}{max=max>$1?max:$1}END{print max}'"
maxmemresult = subprocess.Popen(maxmem, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
print("maxmem and minmem", maxcpuresult)
minmem = "'sed'/^$/d'" + minmaxmem + "| awk 'NR==1{min=$1;next}{min=min<$1?min:$1}END{print min}'"
minmemresult = subprocess.Popen(minmem, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
shell=True).stdout.readline()
print("maxmem and minmem", minmemresult)
'''
if name==‘main’:
Homestill('首页静止','/Users/shixinfa/Desktop/首页静止.txt','/Users/shixinfa/Desktop/首页静止01.txt','/Users/shixinfa/Desktop/首页静止02.txt','/Users/shixinfa/Desktop/首页静止cpu.txt','/Users/shixinfa/Desktop/首页静止mem.txt')
#Homestill('后台空闲','/Users/shixinfa/Desktop/后台空闲.txt','/Users/shixinfa/Desktop/后台空闲01.txt','/Users/shixinfa/Desktop/后台空闲02.txt','/Users/shixinfa/Desktop/后台空闲cpu.txt','/Users/shixinfa/Desktop/后台空闲mem.txt')
'''
Homestill('底图缩放','/Users/shixinfa/Desktop/AAAA.txt','/Users/shixinfa/Desktop/BBBB.txt','/Users/shixinfa/Desktop/CCCC.txt')
Homestill('底图拖着','/Users/shixinfa/Desktop/mmmm.txt','/Users/shixinfa/Desktop/llll.txt','/Users/shixinfa/Desktop/nnnn.txt')
Homestill('发起算路', '/Users/shixinfa/Desktop/suanlu00.txt', '/Users/shixinfa/Desktop/suanlu01.txt',
'/Users/shixinfa/Desktop/suanlu02.txt')
Homestill('普通导航20min(关路况)', '/Users/shixinfa/Desktop/daohangoff00.txt', '/Users/shixinfa/Desktop/danghangoff01.txt',
'/Users/shixinfa/Desktop/daohangoff02.txt')
Homestill('普通导航20min', '/Users/shixinfa/Desktop/danghang00.txt', '/Users/shixinfa/Desktop/daohang01.txt',
'/Users/shixinfa/Desktop/daohang.txt')
Homestill('普通xun航20min', '/Users/shixinfa/Desktop/xunghang00.txt', '/Users/shixinfa/Desktop/xunhang01.txt',
'/Users/shixinfa/Desktop/xunhang.txt')
'''