- ADT、SDK、ADB?
ADT(Android development tools):Android开发工具。在Eclipse上调用各种与android有关的插件。开发人员常用。
SDK(Software development kit):软件开发部件。要用到各种android平台,好比Android 2.3等。开发人员常用。
ADB(Android development debug bridge):用来连接安卓手机/手机模拟器和PC端的桥梁,在PC端命令行界面对手机/模拟器进行全面的操作。测试人员常用。
各种模拟器端口号 eg:夜神模拟器 62001/52001
夜神多开器(多个模拟器)
- adb常见命令
adb --help
adb devices
adb connect/disconnect ip:端口号
回环地址(代表设备的本地虚拟接口):adb connect 127.0.0.1:62001
adb shell :登录设备shell(命令行的人机介面),Android手机后台就是一个Linux系统;(ll ls cd 这些命令都可以使用)
exit: 退出
adb pull <手机文件路径> <本机路径> :从手机中拉取信息放到本地电脑上
adb push <本机路径> <手机文件路径> :从本机电脑中拉取信息放到手机上上
⚠️: pull/push 要有权限,一般建议不要放在C盘根目录。
adb install <包名>.apk
adb uninstall <包名>.apk
adb shell dumpsys activity | find "mResumedActivity" :查看前台应用的包名(可用于卸载应用)
adb logcat 打印log信息
adb logcat -v time > d:\logcat.txt
Ctrl+C :中断
-
adb 连接手机
博文:adb连接Android手机的两种方式,https://www.cnblogs.com/zymnstlm/p/12381619.html
- logcat日志文件
安卓日志系统提供了记录和查看调试信息的共功能,日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过logcat命令来查看和使用。
开发者选项,有个“日志记录器缓冲区大小”,默认是256K,日志是循环写入缓冲区的,在通常情况下,写满时最旧的日志会被删除以给新输出的日志留出内存空间---真机设置。(模拟器一般没有)
日志格式:
- 日志时间
- 优先级:
V:Verbose(最低级别)
D:Debug(调试,用于调试信息,可以在发布产品中关闭,比较常见)
I:Info. (信息)
W:Warning(警告)
E:Error(错误) - 标签(tag)
- PID(进程ID)
- 正文:日志主体内容
- 发生crash如何分析
搜索exception关键字,根据时间、包名定位;
搜索fatal/caused by关键字;
搜索force finish;
找到对应日志,贴到bug,发给开发!!!
-
何为ANR?ANR分析?
Application Not Responding,应用无响应。
为用户在主线程长时间被阻塞时提哦功能处理交互,提高用户体验;
Android系统一种自身检测机制;
分析01:Logcat日志(1个文件,截取ANR部分文本)
分析02:Trace文件分析(1个文件,整个文件copy)
分析03:Dropbox(多个文件)
IOS APP 测试安装方法
- UDID(工具:iTunes、iTools、xcode)
- 蒲公英
- testflight
博文:http://testingpai.com/article/1608364740428
面试题:App测试什么时候需要收集日志?如何收集?
一般App异常的时候,比如发生崩溃(Crash)或者ANR时,会收集一下系统日志,定位bug;
安卓手机借助ADB,连接手机找到对应日志路径,把日志拉取(adb pull)出来,然后通过关键字查找到有效日志信息,贴到bug里;
IOS手机也会借助一些工具,比如苹果电脑利用xcode,如果不是苹果电脑可以使用iTunes/iTools工具,找到对应日志。
-
fiddler弱网测试
fiddler主要是使用Rules->Performance->Simulate Modem Speeds功能进行的网络延迟模拟,首先需要设置手机代理:修改网络,勾选“显示高级选项”,输入代理服务器主机名、代理服务器端口
弱网原理:手机流量走电脑端fiddler代理,fiddler设置丢包和延迟。
具体操作:Rules->Customize Rules...->搜索:simulateModem->更改设置(300->3000,150->1500)