Bat常用脚本Demo

Bat抓取手机内存Demo

@ECHO OFF
REM 窗口标题
TITLE Demo
for /l %%i in (1,1,20) do (
REM 在文本框输入内容
adb shell input text abcdefghigabcdefghigabcdefghigabcdefghigabcdefghi%%i
REM 睡眠时间
ping /n 2 127.1 > null
REM 点击发送按钮
adb shell input tap 1011 1748

ping /n 1 127.1 > null
REM 使用shell命令查看app内存使用情况并保存到桌面
adb shell dumpsys meminfo com.app.xxx >> C:\Users\xxx\Desktop\test.txt
REM 打印发送次数到窗口
ECHO Send the message %%i
)
REM 脚本结束
pause

保存并清除Log

@echo off
title FissionSaveLog&ClearLog
echo 等待设备连接...
adb wait-for-device
adb root
ping 2 127.1>nul
adb remount
ping 3 127.1>nul
adb pull /data/logs /logs/androidLog/
adb pull /data/dontpanic /logs/dontpanic/
adb pull /data/mnt/shell/emulated/0/Pictures/Screenshots/ /logs/Pictures/
adb pull /data/anr/ logs/traces/
adb pull /data/tombstones /logs/tombstones/
adb pull /mnt/shell/emulated/0/monkey_log.txt /logs/monkey_log.txt

echo.
echo 按继续删除上方已保存log、截图、清理历史log,不需要点×关闭吧!
echo 建议一天清理一次,不需要太频繁。
pause > nul

REM 删除历史log
adb shell rm -rf /data/logs/*
adb shell du -sh /data/logs/
REM 删除历史ANR
adb shell rm -rf /data/anr/*
adb shell du -sh /data/anr/
REM 删除历史底层报错信息
adb shell rm -rf /data/tombstones/*
adb shell du -sh /data/tombstones/
REM 删除储存的截图文件
adb shell rm -rf /mnt/shell/emulated/0/Pictures/Screenshots/*
adb shell du -sh /mnt/shell/emulated/0/Pictures/Screenshots/
REM 删除Monkey日志
adb shell rm -rf /mnt/shell/emulated/0/monkey_log.txt

Monkey一键执行脚本

@echo OFF
title XDJA-Monkey
echo 等待设备连接...
adb wait-for-device
adb devices
cls

echo 设备已连接...
::获取手机信息
adb shell cat /system/build.prop>phone.info

for /F "tokens=1,2 delims==" %%a in (phone.info) do (

    if %%a == ro.build.version.release set androidOS=%%b

    if %%a == ro.product.model set model=%%b

    if %%a == ro.build.fota.version set Rom_version=%%b
)

del /a/f/q phone.info

echo ---------------------------------------------------------
echo 手机型号: %model%
echo 系统版本: Android %androidOS%
echo ROM 版本: %Rom_version%
echo ---------------------------------------------------------

::============测试前准备==============
adb shell settings put system screen_brightness_mode 0
echo 关闭屏幕自动调节亮度...
adb shell settings put system screen_brightness 0
echo 屏幕亮度设置为0...
adb shell settings put global auto_time 1
echo 时间设置为网络获取...
adb shell settings put system screen_off_timeout 1800000
echo 设置屏幕休眠为30min...
echo ---------------------------------------------------------

adb shell am start -n com.app.UserLog/com.app.UserLog.UserLogSetting

echo ---------------------------------------------------------
::============各模块包命名==============
set "app1=-p com.android.contacts"
set "app2=-p com.android.mms"
set "app3=-p org.codeaurora.snapcam"
set "app4=-p com.android.gallery3d"
set "app5=-p com.android.settings"
set "app6=-p com.android.calendar"
set "app7=-p com.lqsoft.launcher3"
set "app8=-p com.android.browser"
set "app9=-p com.android.deskclock"
set "appA=-p com.android.calculator2"
set "appB=-p com.caf.fmradio"
set "appC=-p com.android.soundrecorder"
set "appD=-p com.android.email"
set "appE=-p com.xdja.fileexplorer"
::==============================================
echo.[模块列表]
echo 1.联系人  2.短信      3.相机    4.图库  5.设置
echo 6.日历       7.桌面      8.浏览器   9.时钟
echo A.计算器  B.FM      C.录音    D.邮件  E.文件管理器 
echo ---------------------------------------------------------

::变量延迟的启动
SetLocal EnableDelayedExpansion

:selectmodel
::设置测试时长
set testTime=180000

set choice1=0
set choice2=0
set selmodel= 0
echo [全模块:1]    [单模块:2] [组合模块:3]
set /p selmodel= 选择测试方式:
::echo %selmodel%

::组合模块
if %selmodel% == 3 (
set /p choice1= 选择模块1:
set /p choice2= 选择模块2:
goto RunMonkey
)

::全模块
if %selmodel% == 1 (
goto RunMonkey
)

::单模块
if %selmodel% == 2 (
set /p choice2=选择待测模块:
goto RunMonkey
)

goto selectmodel

:RunMonkey
echo ---------------------------------------------------------
echo monkey !app%choice1%! !app%choice2%! --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v %testTime%
adb shell "monkey !app%choice1%! !app%choice2%! --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v %testTime% > /storage/sdcard0/monkey_log.txt &"
echo.
pause

电量测试
先创建battery_monitor.sh文件,代码如下:

#!/system/bin/sh
echo "!==================battery monitor==================!" > /sdcard/battery.txt
while : ["1" = "1"]
do
input swipe 531 1370 541 519
echo "==================begin====================="
sleep 3
date >> /sdcard/logs_xxx.txt
echo "===================================================" >> /storage/sdcard0/logs_liusheng.txt
done
echo "==================never to here====================="

2、将battery_monitor.sh文件push到手机的data目录下,具体方式见下方:

adb root
adb push C:\Users\zhangwei1\Desktop\ACE_3.1.10.R25_20151113_userdebug/battery_monitor.sh /data/
adb shell
cd /data/
chmod 777 battery_monitor.sh
nohup ./battery_monitor.sh &

以上命令运行完成后,再根据下面的预置条件进行设置即可;

2、预置条件:
亮度:最大
休眠:30分钟后

3、测试完成后,直接在手机根目录中取battery.txt文件即可。

脱机运行脚本:

#举例脚本xxx.sh
#!/system/bin/sh
echo "!==================battery monitor==================!" > /sdcard/battery.txt
while : ["1" = "1"]
do
input swipe 531 1370 541 519
sleep 1000
done
echo "==================never to here====================="

执行以下操作:
1.shell文件导入Data\data adb pusll
adb remount
adb push C:\Users\liusheng\Desktop\xxx.sh data/
2.shell文件获取最高权限,三个账户最高权限,chmod777
chmod 777 \data\xxx.sh
3.把shell文件激活
./xxx.sh
4.重启停止

猜你喜欢

转载自blog.csdn.net/github_35707894/article/details/79626568