前言

做app测试,遇到异常情况,查看日志是必不可少的,日志如何输出到手机sdcard和电脑的目录呢?这就需要用logcat输出日志了
以下操作是基于windows平台的操作:adb logcat | find
linux平台的操作可以把find改成grep: adb logcat | grep
windows上的dos里面是没grep指令的

logcat输出日志

1.把日志存入手机sdcard某个目录(前提是这个目录要是存在的)

adb logcat -f /sdcard/yoyo/yoyo.txt

备注:-f 将日志输出到文件

上面这个指令在真机上(未root)是会报错的,提示没操作权限,在模拟器上可以执行

2.把日志存入电脑的某个目录,如d:\debug

adb logcat >d:debug\yoyo.txt

备注这里没-f, 不要问为什么

find过滤包名

1.如果直接用adb logcat抓日志的话,会把系统的一些其他无关紧要的都抓出来,如果只想抓取被测app的日志,那就根据包名过滤

adb logcat | find "com.sankuai.meituan" >d:\hello.txt

结束logcat

1.结束logcat抓包,可以用ctr+c快捷键结束, 这个是通过手工的快捷键操作完成

2.也可以先查询到logcat的pip,再kill掉

adb shell ps | findstr logcat

adb shell kill -9 [logcatpid]

注意:kill操作在模拟器上是可以的,真机上没权限

help其它功能

1.cmd输入adb logcat -help可以查看其它功能

adb logcat -help

C:\Users\admin>adb logcat -help
Unrecognized Option h
Usage: logcat [options] [filterspecs]
**选项**:
-- "-s"选项 : 设置输出日志的标签, 只显示该标签的日志;

-- "-f"选项 : 将日志输出到文件, 默认输出到标准输出流中, -f 参数执行不成功;

-- "-r"选项 : 按照每千字节输出日志, 需要 -f 参数, 不过这个命令没有执行成功;

-- "-n"选项 : 设置日志输出的最大数目, 需要 -r 参数, 这个执行 感觉 跟 adb logcat 效果一样;

-- "-v"选项 : 设置日志的输出格式, 注意只能设置一项;

-- "-c"选项 : 清空所有的日志缓存信息;

-- "-d"选项 : 将缓存的日志输出到屏幕上, 并且不会阻塞;

-- "-t"选项 : 输出最近的几行日志, 输出完退出, 不阻塞;

-- "-g"选项 : 查看日志缓冲区信息;

-- "-b"选项 : 加载一个日志缓冲区, 默认是 main, 下面详解;

-- "-B"选项 : 以二进制形式输出日志;

**过滤项格式** : <tag>[:priority] , 标签:日志等级, 默认的日志过滤项是 " *:I " ;

-- V : Verbose (明细);

-- D : Debug (调试);

-- I : Info (信息);

-- W : Warn (警告);

-- E : Error (错误);

-- F : Fatal (严重错误);

-- S : Silent(Super all output) (最高的优先级, 可能不会记载东西);

'*' by itself means '*:D' and <tag> by itself means <tag>:V.
If no '*' filterspec or -s on command line, all filter defaults to '*:V'.
eg: '*:S <tag>' prints only <tag>, '<tag>:S' suppresses all <tag> log messages.

If not specified on the command line, filterspec is set from ANDROID_LOG_TAGS.

If not specified with -v on command line, format is set from ANDROID_PRINTF_LOG
or defaults to "threadtime"

appium+python自动化-adb logcat查看日志的更多相关文章

  1. appium+python自动化53-adb logcat查看日志

    前言 做app测试,遇到异常情况,查看日志是必不可少的,日志如何输出到手机sdcard和电脑的目录呢?这就需要用logcat输出日志了 以下操作是基于windows平台的操作:adb logcat | ...

  2. adb logcat 查看日志

    使用 logcat 命令 查看和跟踪系统日志缓冲区的命令logcat的一般用法是: [adb] logcat [<option>] ... [<filter-spec>] .. ...

  3. appium+python自动化-adb shell模拟点击事件(input tap)

    前言 appium有时候定位一个元素很难定位到,或者说明明定位到这个元素了,却无法点击,这个时候该怎么办呢? 求助大神是没用的,点击不了就是点击不了,appium不是万能的,这个时候应该转换思路,换其 ...

  4. adb logcat 查看日志 (转载)

    转自:http://blog.csdn.net/xyz_lmn/article/details/7004710 使用 logcat 命令 查看和跟踪系统日志缓冲区的命令logcat的一般用法是: [a ...

  5. appium+python自动化-adb offline(5037端口被占)

    前言 adb连手机的时候经常会出现offline的情况,一般杀掉adb,然后重启adb可以解决. 如果发现不管怎么重启adb都连不上,一直出现offlie的情况,这个时候很大可能就是adb的5037端 ...

  6. appium+python自动化-adb文件导入和导出(pull push)

    前言 用手机连电脑的时候,有时候需要把手机(模拟器)上的文件导出到电脑上,或者把电脑的图片导入手机里做测试用,我们可以用第三方的软件管理工具直接复制粘贴,也可以直接通过adb命令导入和导出. adb ...

  7. appium+python自动化 adb shell按键操作

    前言 接着上篇介绍input里面的按键操作keyevent事件,发送手机上常用的一些按键操作 keyevent 1.keyevent事件有一张对应的表,可以直接发送对应的数字,也可以方式字符串,如下两 ...

  8. appium+python自动化-adb shell按键操作(input keyevent)

    前言 接着上篇介绍input里面的按键操作keyevent事件,发送手机上常用的一些按键操作 keyevent 1.keyevent事件有一张对应的表,可以直接发送对应的数字,也可以方式字符串,如下两 ...

  9. adb logcat查看某个进程的输出日志

    adb logcat查看某个进程的输出日志 adb logcat 默认是没有这个功能的,我实现了一个小bash函数,添加到你$HOME/.bashrc 文件中: # 作用:能够通过进程名显示log # ...

随机推荐

  1. js中对象与函数的关系

    首先什么是对象?根据W3C上面的解释JS中所有事物都是对象,对象是拥有属性和方法的数据,由此可以看出基本值类型不是对象(number.string.Boolean.Undefined),剩下的引用类型 ...

  2. (AOP)理解

    AOP的全称: Aspact  Oriented  Programming AOP的目标(作用):让我们可以“专心做事”  日志记录,事务处理,异常捕获,缓存操作. AOP原理 将复杂的需求分解出不同 ...

  3. mongodb sort

    sort() 方法 要在 MongoDB 中的文档进行排序,需要使用sort()方法. sort() 方法接受一个文档,其中包含的字段列表连同他们的排序顺序.要指定排序顺序1和-1. 1用于升序排列, ...

  4. Windows7环境下Apache连接MySQL提示“连接已重置”的解决办法

    win7下手动搭建wamp环境,碰到的几个坑总结下, 1.能正常访问php和html类型文件,但是访问项目文件时老是连接被重置,后来总结是数据库的问题,就写测试用例测试php能否成功调用数据库, &l ...

  5. Hibernate三种批量处理数据

    概念:批量处理数据是指在一个事务场景中处理大量数据. 在应用程序中难以避免进行批量操作,Hibernate提供了以下方式进行批量处理数据: (1)使用HQL进行批量操作  数据库层面  execute ...

  6. uvm_scoreboard——得分

    scoreboard 是验证平台很重要的一部分,因为,验证就是给激励,然后,检查结果.而scoreboard 就是肩负这检查结果的重任.测试用例能不能过,全由scoreboard说了算. A scor ...

  7. MyBatis插入数据之后返回插入记录的id

    MyBatis插入数据的时候,返回该记录的id<insert id="insert" keyProperty="id" useGeneratedKeys= ...

  8. JavaScript_1_简介

    1. JavaScript属于客户端脚本语言 2. JavaScript用来改进网页设计.验证表单.检测浏览器.创建cookies,以及更多的应用 a. 是为HTML设计者提供的一种编程工具 b. 可 ...

  9. ConCurrent in Practice小记 (4)

    ConCurrent in Practice小记 (4) Executors Callable && Future <T> Callable:此接口有一个call()方法. ...

  10. CPP-基础:cout

    C++编程语言互换流中的标准输出流,需要iostream.h支持.读为 "c out". 使用范例 //用户输入的数字由cin保存于变量a中,并通过cout输出. #include ...