开源云真机平台-Sonic平台-python自定义脚本-批量导出monkey测试日志并抓取logcat日志

【主要功能】

开源云真机平台-Sonic平台-python自定义脚本:

1、批量导出monkey测试日志

2、抓取logcat日志

3、将导出的日志批量复制到局域网内的制定电脑上进行收集整理;

4、每一台设备的monkey日志、logcat日志单独存储,并以日期+设备序列号的方式保存;

【详细代码】

python 复制代码
# -*- coding: utf-8 -*- 
import os
import subprocess
import time
import threading
import os,sys,json
udId = sys.argv[1:][1]
text1 = sys.argv[1:][2]


ftp_path = r"\\10.11.12.2\share\MonkeyLogs"
print("ftp_path=" + ftp_path)

current_time = time.strftime("%Y%m%d_%H%M%S")
date_path = time.strftime("%Y%m%d_%H")
pc_path = os.path.join(ftp_path, f"MonkeyLogs_{date_path}", current_time + "_" + udId)

if not os.path.exists(ftp_path):
    os.makedirs(ftp_path)
if not os.path.exists(pc_path):
    os.makedirs(pc_path)


def run_command(command):
    print(f"command={command}")
    os.system(command)
    time.sleep(1)

def run_test():
    print(f"monkey logs uploading...")
    run_command(f"""adb -s {udId} shell settings put global policy_control null""")
    run_command(f"""adb -s {udId} pull /sdcard/MonkeyLog.text {pc_path}""")
    run_command(f"""adb -s {udId} pull /sdcard/MonkeyError.text {pc_path}""")
    run_command(f"""adb -s {udId} shell sleep 3""")
    thread = threading.Thread(target=logcat, args=())
    thread.start()
  
    print("60S后重启.")
    time.sleep(60)
    run_command(f"""adb -s {udId} reboot""")
    print(f"android device rebooting...")
    


def logcat():
    print(f"logcat logs uploading...")
    run_command(f"""adb -s {udId} logcat -v time > {pc_path}\\{udId}_logcat.log &""")

if __name__ == "__main__":
    run_test()
  



          

【运行效果】

【导出结果】

相关推荐
菜鸟~noob2336 分钟前
【电子战】第15篇:混合定位——TDOA/FDOA/AOA 联合【含matlab代码】
开发语言·matlab
我不会起名字32229 分钟前
一天一道算法题(34):回溯法的经典例题(子集)
java·数据结构·python·算法·golang·深度优先·力扣
ThornArmor1 小时前
重铸1996|肉体渲染:关节的裂缝:分段模型积木拼装与未成熟的 RSP 矩阵骨骼动画形变
c语言·汇编·c++·python·硬件架构·游戏机
毕业设计7031 小时前
(免费领源码)基于Python的博物馆研学活动管理系统的设计与实现22724- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
python·mysql·随机森林·pycharm·django·flask·推荐算法
kyrie_sakura1 小时前
python学习笔记15 -- Anaconda,Jupyter,numpy
python·学习·jupyter·numpy
Dreams_l1 小时前
死信队列和延迟队列介绍
java·开发语言
测试老哥2 小时前
接口测试的测试用例应该怎么写?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
Zenova EdgeOS2 小时前
Python 工业边缘 redis-py 异步实战
开发语言·redis·python
caoerzhong3 小时前
JeeWMS 开源仓库管理系统权限与域验证解析:Java WMS 如何把数据权限管到仓、货主与人
java·python·开源·vue
一木 之林3 小时前
Miniconda 安装与 Jupyter 使用入门
ide·python·jupyter