python编写交互界面查分app_python_adb 图形界面获取app测试数据,并展示部分测试报告v1.0版本(开源)...

from ab_python importstarttime_app,adb_monkey,huoqushebeizhuangtai,caijicpu,liulang,getnencunimporttkinter ,threadingfrom time importsleepfrom tkinter importmessagebox,ttkfrom tkinter import *

from py_excel importqidongceshi,getcpudefqidongapp():

start_tim=[]

cishu=[]

status_shebei=huoqushebeizhuangtai()if status_shebei =='device':

packname=baoming_t.get('0.0',END)

acti=activ_t.get('0.0',END)

cish=cishu_ac.get()if len(acti)<=1 or len(packname)<=1:

messagebox.showinfo('提醒','包命或者包名activity不能为空')else:if len(cish)<=1:

messagebox.showinfo('提醒','次数不能为空')else:

i=0

e1['state']= 'normal'e1.delete(1.0,tkinter.END)

sum=0for i inrange(int(cish)):

start_time=starttime_app(packagename=packname,packagenameactivicy=acti)

start_tim.append(int(start_time[1]))

cishu.append(i)if start_time isNone:

messagebox.showwarning('警告','请检查您输入的包或者包的启动activity')breaktext='第%s次启动时间:%s'%(i+1,start_time[1])

sum+=int(start_time[1])

e1['state']= 'normal'e1.insert(tkinter.END,text)

e1.insert(tkinter.END,'\n')

e1.see(END)

btn_start['state']= 'disabled'e1.insert(tkinter.END,('平均用时:%s'%(sum/int(cish))))

qidongceshi(cishu=cishu,start=start_tim)

messagebox.showinfo('提示','测试报告已经生成,请到当前目录查看')

e1['state']= 'disabled'btn_start['state']= 'normal'messagebox.showinfo('通知','测试已经完成')else:

messagebox.showerror('警告','设备连接异常')defmonkey_app():

status_shebei=huoqushebeizhuangtai()if status_shebei =='device':try:

packname=baoming_t1.get('0.0',END).split()[0]

zhongzi=zhongzi_t.get('0.0',END).split()[0]

time=time_t.get().split()[0]

touch=touch_t.get('0.0',END).split()[0]

huadong=huadong_t.get('0.0',END).split()[0]

guiji=guiji_t.get('0.0',END).split()[0]

xitong=xitong_t.get('0.0',END).split()[0]

acti=acti_t.get('0.0',END).split()[0]

event=event_t.get('0.0',END).split()[0]

log=log_t.get('0.0',END).split()[0]

danghang=danghang_t.get('0.0',END).split()[0]if len(packname)<=5:

messagebox.showwarning('提醒','请正确填写包名')if int(touch)+int(huadong)+int(guiji)+int(danghang)+int(xitong)+int(acti) >100:

messagebox.showerror('提醒','您输入的所有的事件的比例和不能超过100%')#btn_monkey['state']= 'disabled'

adb_monkey(packagename=packname,s_num=zhongzi,throttle=time,pct_touch=touch,pct_motion=huadong,pct_trackball=guiji,pct_nav=danghang,pct_syskeys=xitong,pct_appswitch=acti,num=event,logfilepath=log)#messagebox.showinfo('通知',('测试完毕,日志存放:%s'%log))

#btn_monkey['state']= 'normal'

except:

messagebox.showwarning('警告','必须填写monkey相关数据')else:

messagebox.showwarning('警告','设备连接异常 请重新连接设备!')defcpu_app():

status_shebei=huoqushebeizhuangtai()if status_shebei =='device':

xingneng_bao=xingneng_baoming.get('0.0',END).split()[0]

xing=xing_t.get()if len(xingneng_bao)<=5:

messagebox.showwarning('警告','请检查您的包名')

cishu_list=[]

cpu_list=[]

rescv_list=[]

send_list=[]

total_list=[]

pass_list=[]

i=0for i inrange(int(xing)):

nen_cun=getnencun(xingneng_bao)

rescv,send,liulang_sum=liulang(xingneng_bao)

cpu_caiji=caijicpu(xingneng_bao)

neicun_t['state']= 'normal'pass_list.append(int(nen_cun))

neicun_t.insert(tkinter.END,('Pass值:%s'%nen_cun))

neicun_t.insert(tkinter.END,'\n')

neicun_t.see(END)

neicun_t['state']= 'disabled'cpu_t['state']= 'normal'cpu_list.append(int(cpu_caiji.split('%')[0]))

cpu_t.insert(tkinter.END,('CPU占有率:%s'%cpu_caiji))

cpu_t.insert(tkinter.END,'\n')

cpu_t.see(END)

cpu_t['state']= 'disabled'liulang_t['state']= 'normal'total_list.append(int(liulang_sum))

rescv_list.append(int(rescv))

send_list.append(int(send))

liulang_t.insert(tkinter.END,('总流量:%sk,上传流量:%sk,下载流量:%sk'%(liulang_sum,rescv,send)))

liulang_t.insert(tkinter.END,'\n')

liulang_t.see(END)

liulang_t['state']= 'disabled'xingneng_btn['state']= 'disabled'i+=1cishu_list.append(int(i))

getcpu(cishu=cishu_list,start_cpu=cpu_list,recv_list=rescv_list,send_list=send_list,total_list=total_list,Pass_list=pass_list)

xingneng_btn['state']= 'normal'messagebox.showinfo('提醒','测试完毕,测试报告已经生成!')else:

messagebox.showwarning('警告','设备连接异常 请重新连接设备!')defteread():for i in range(1):

t=threading.Thread(target=cpu_app,args=())

t.start()defteread_start():for i in range(1):

t=threading.Thread(target=qidongapp,args=())

t.start()if __name__ == '__main__':try:

status_shebei=huoqushebeizhuangtai()if status_shebei =='device':

root=tkinter.Tk()

root.title('雷子的安卓adb小工具')#root.geometry("1000x900")

#root.resizable(width=False, height=False)

tkinter.Label(root,text='性能参数展示',fg='red',font=("黑体", 15, "bold"),).grid(row=0,column=3)

cpu_t=tkinter.Text(root,height=5,width=30)

cpu_t.grid(row=1,column=2)

liulang_t=tkinter.Text(root,height=5,width=40)

liulang_t.grid(row=1,column=4)

liulang_t.see(END)

neicun_t=tkinter.Text(root,height=5,width=30)

neicun_t.grid(row=3,column=2)

neicun_t.see(END)

suji_ev=[50,100,150,200,300]#这里还原可以增加可以选择的次数

xing_t=ttk.Combobox(root,values=suji_ev,width=5)

xing_t.current(0)

xing_t.grid(row=1,column=6)

tkinter.Label(root,text='cpu').grid(row=2,column=2)

tkinter.Label(root,text='参数次数').grid(row=1,column=5)

tkinter.Label(root,text='流量').grid(row=2,column=4)

tkinter.Label(root,text='内存').grid(row=6,column=2)

tkinter.Label(root,text='包名:').grid(row=7,column=1)

xingneng_baoming=tkinter.Text(root,height=1,width=30)

xingneng_baoming.grid(row=7,column=2)

xingneng_btn=tkinter.Button(root,text='开始测试',font=("黑体", 15, "bold"),command=teread)

xingneng_btn.grid(row=7,column=3)

tkinter.Label(root,text='启动时间测试',fg='red',height=2,font=("黑体", 15, "bold")).grid(row=8,column=3)

tkinter.Label(root,text='测试包名').grid(row=9,column=1)

baoming_t=tkinter.Text(root,height=1,width=30)

baoming_t.grid(row=9,column=2)

tkinter.Label(root,text='测试包Activity').grid(row=9,column=3)

activ_t=tkinter.Text(root,height=1,width=30)

activ_t.grid(row=9,column=4)

tkinter.Label(root,text='测试次数').grid(row=9,column=5)

num=[10,20,30,50,100]

cishu_ac=ttk.Combobox(root,values=num,state='readonly',width=5)

cishu_ac.current(0)

cishu_ac.grid(row=9,column=6)

tkinter.Label(root,text='启动时间展示').grid(row=10,column=1)

e1= tkinter.Text(root,width=30,height=10, state="disabled")

e1.grid(row=10,column=2,padx=20,pady=30)

btn_start=tkinter.Button(root,text='测试',font=("黑体", 15, "bold"),command=teread_start)

btn_start.grid(row=10,column=3)

tkinter.Label(root,text='Monkey 测试',fg='red',font=("黑体", 15, "bold")).grid(row=11,column=3)

tkinter.Label(root,text='测试包名:').grid(row=12,column=1)

baoming_t1=tkinter.Text(root,height=1,width=30)

baoming_t1.insert('0.0',0)

baoming_t1.grid(row=12,column=2)

tkinter.Label(root,text='随机种子数:').grid(row=12,column=3)

zhongzi_t=tkinter.Text(root,height=1,width=30)

zhongzi_t.grid(row=12,column=4)

zhongzi_t.insert('0.0',0)

tkinter.Label(root,text='时间间隔:').grid(row=12,column=5)

suji_event=[500,1000,1500,2000,3000]

time_t=ttk.Combobox(root,values=suji_event,width=5)

time_t.current(0)

time_t.grid(row=12,column=6)

tkinter.Label(root,text='导航事件百分比:').grid(row=13,column=1)

danghang_t=tkinter.Text(root,height=1,width=30)

danghang_t.insert('0.0',0)

danghang_t.grid(row=13,column=2)

tkinter.Label(root,text='触摸事件百分比:').grid(row=13,column=3)

touch_t=tkinter.Text(root,height=1,width=30)

touch_t.grid(row=13,column=4)

touch_t.insert('0.0',0)

tkinter.Label(root,text='滑动事件百分比:').grid(row=14,column=1)

huadong_t=tkinter.Text(root,height=1,width=30)

huadong_t.grid(row=14,column=2)

huadong_t.insert('0.0',0)

tkinter.Label(root,text='轨迹球事件百分比:').grid(row=14,column=3)

guiji_t=tkinter.Text(root,height=1,width=30)

guiji_t.grid(row=14,column=4)

guiji_t.insert('0.0',0)

tkinter.Label(root,text='系统按键百分比:').grid(row=15,column=1)

xitong_t=tkinter.Text(root,height=1,width=30)

xitong_t.grid(row=15,column=2)

xitong_t.insert('0.0',0)

tkinter.Label(root,text='activity之间的切换百分比:').grid(row=15,column=3)

acti_t=tkinter.Text(root,height=1,width=30)

acti_t.grid(row=15,column=4)

acti_t.insert('0.0',0)

tkinter.Label(root,text='事件量:').grid(row=16,column=1)

event_t=tkinter.Text(root,height=1,width=30)

event_t.insert('0.0',0)

event_t.grid(row=16,column=2)

tkinter.Label(root,text='日志存放路径:').grid(row=16,column=3)

log_t=tkinter.Text(root,height=1,width=30)

log_t.grid(row=16,column=4)

log_t.insert('0.0','F:\\monekey.txt')

btn_monkey=tkinter.Button(root,text='启动Monkey测试',font=("黑体", 15, "bold"),command=monkey_app)

btn_monkey.grid(row=17,column=3)

root.mainloop()else:print(status_shebei)print('设备未连接或者连接异常')exceptException as e:print(e)print('请检查您是否连接设备')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值