Android测试三件套:传文件、抓包、看日志

时间:2023-02-16 00:11:56

在对安卓进行测试时,我们需要把 apk 传到安卓机上,对请求抓包,同时监控应用日志。本文就来讲讲具体操作。

安卓机是指基于安卓的机器 ,如手机、POS 机、电视盒子等。

传文件

我们拒绝用 U 盘传文件。直接用 WIFI 传。别问,问就是想装逼。哈哈哈。

① 先把装逼神器 adb 下载下来,打开以下网址:

https://adb.clockworkmod.com/

Android测试三件套:传文件、抓包、看日志

下载后得到 UniversalAdbDriverSetup.msi 文件,只有 16.2 M,相比有些人让安装 Android Studio,轻巧了太多。

② 安装之后打开 cmd,输入 adb

Android测试三件套:传文件、抓包、看日志

出现如图所示就算安装成功了。

③ 接着继续装逼,把安卓机掏出来,打开设置 | 系统 | 关于手机,对着“版本号”一顿猛戳,戳到开发者模式为止,启用它(不同安卓机可能方式不同)。

④ 装,接着装。在 WIFI 设置中,找到已经和电脑处于同一网络的 WIFI,查看高级选项,获取 IP 地址。

⑤ 在电脑的 cmd 中,输入以下命令使用 adb 连接安卓机:

adb connect 192.168.x.x

出现如图所示就算连接成功了:

Android测试三件套:传文件、抓包、看日志

⑥ 好,一切就绪,开始骚操作,电脑 → 手机:

adb push D:\test.apk  /storage/emulated/0/

电脑 ← 手机:

adb pull /storage/emulated/0/test.apk D:\

抓包

抓包用到的工具是 Charles。下载地址:

https://www.charlesproxy.com/

Android测试三件套:传文件、抓包、看日志

下载后直接安装即可。建议找下破解,不然用着会有点卡。

抓包很简单,只需要两步。第一步在电脑端启动代理。第二步在安卓机上手动设置代理。

第一步在电脑端启动代理。Charles 中打开 Proxy | Proxy Settings 启用代理,默认端口 8888:

Android测试三件套:传文件、抓包、看日志

第二步在安卓机上手动设置代理。打开安卓机 WIFI 设置,编辑网络(不同手机可能方式不同),添加手动代理,填写电脑 IP 和 Charles 代理端口

Android测试三件套:传文件、抓包、看日志

保存后 Charles 会提示有连接请求:

Android测试三件套:传文件、抓包、看日志

允许即可。

看日志

电脑端 cmd 一行命令搞定:

adb logcat

不过这样打出来的日志会比较多。可以做下过滤。

Windows:

adb logcat | find "some"

Linux:

adb locat | grep "some"

抓不到包的问题

有可能会抓不到包。不同机器原因各有不同。这里我不能给出完美的解决办法。只能分享下我的经验。如果无法解决,还是找下百度。

一种可能就是 HTTPS 证书问题,在 Help | SSL Proxying 有对应功能:

Android测试三件套:传文件、抓包、看日志

有些时候电脑端安装完证书就可以了,有些时候还需要在安卓机上下载证书:

http://charlesproxy.com/getssl

有一次我访问这个链接无响应,重启 Charles 又可以了下载了。

还有一种可能是没有添加白名单,Proxy | SSL Proxying setttings:

Android测试三件套:传文件、抓包、看日志
Android测试三件套:传文件、抓包、看日志

简要回顾

本文介绍了安卓机测试环境的准备,用到了 adb、Charles 软件,进行传文件、抓包、看日志。操作还是比较简单,不过实际过程中,可能会由于机器不同导致遇到奇奇怪怪的问题。通过百度,一般是能够解决的。最后温馨提示,如果第二天安卓机提示无法连接网络,那么看看是不是电脑的 Charles 关掉了。哈哈哈。

Android测试三件套:传文件、抓包、看日志的更多相关文章

  1. Android 下使用tcpdump网络抓包方法

    Android 下使用tcpdump网络抓包方法 抓包需要tcpdump以及Root权限,tcpdump在本文后有下载. 首先把tcpdump传进手机,用adb命令(放SD卡有时会有问题,我一次可以用 ...

  2. Android/IOS手机使用Fiddler抓包

    对于Android和IOS开发及测试的同事来说抓包是一个很重要的事,有利于排查问题所在,快速定位问题.但长期以来一直没有一款可以快速抓包的工具,直到有了Fiddler2. 使用步骤: 1.  Fidd ...

  3. LoadRunner+Android模所器实现抓包并调试本地服务端

    步骤就是 1:新建LR脚本.协议选择Mobile Application - HTTP/HTML 2:在record里选择第三个:Record Emulator........ 3:  选择下一步后, ...

  4. Postman测试上传文件

    postman测试上传文件   输入url:http://127.0.0.1:8081/uploadfile 选择post方式 选择body 选择form-data,text改为file 输入key: ...

  5. charles抓包看性能数据

    1.优化某个接口或加载速度(H5加载速度慢) 抓包看Overview ①看Duration,就是接口的加载时间 ②看Latency,就是延时一端传播到另一端所花费的时间:一般和网络有关:可以综合Dur ...

  6. 如何分析和研究Log文件 ,如何看日志信息

    如何分析和研究Log文件 ,如何看日志信息 . Log 在android中的地位非常重要,要是作为一个android程序员不能过分析log这关,算是android没有入门吧 . 下面我们就来说说如何处 ...

  7. Android网络开发实例(基于抓包实现的网络模拟登录,登出和强制登出)

    学习Android有几个月了,最近喜欢上了网络编程,于是想通过Android写一些一个小程序用于连接外网.在这里非常感谢雪夜圣诞的支持,非常感谢,给我打开新的一扇门. 1.声明,本程序只能用于西南大学 ...

  8. Fiddler 抓包工具怎么使用?怎么在Android手机端的APP抓包

    https://blog.csdn.net/loner_fang/article/details/83309266 参考这个人的微博上有fiddler主要功能使用的步骤. 序章 Fiddler是一个蛮 ...

  9. Android导入Burp Suite证书抓包HTTPS

    需求 Android APP安全测试时,主要工作分为: APK安全 业务安全 APK安全这里不讨论,我说说业务安全,因为大部分的业务校验逻辑还是放在Servier端,这里就会涉及到网络通信了.因此网络 ...

随机推荐

  1. [The Basics of Hacking and Penetration Testing] Learn & Practice

    Remember to consturct your test environment. Kali Linux & Metasploitable2 & Windows XP

  2. 理解android.intent.action.MAIN 与 android.intent.category.LAUNCHER

    刚才看了一下sundy的视频<LLY110426_Android应用程序启动>,里面讲到luncher这个activity通过获取应用程序信息来加载应用程序,显示给用户,其中就是通过一个应 ...

  3. 原始套接字SOCK&lowbar;RAW

    原始套接字SOCK_RAW 实际上,我们常用的网络编程都是在应用层的报文的收发操作,也就是大多数程序员接触到的流式套接字(SOCK_STREAM)和数据包式套接字(SOCK_DGRAM).而这些数据包 ...

  4. attr与prop

    Jquery获取checkbox属性checked为undefined (-- ::)转载▼ 标签: js jquery checkbox checked undefined 分类: JQuery 使 ...

  5. poj&colon; 3094

    简单题 #include <iostream> #include <stdio.h> #include <string> #include <stack&gt ...

  6. sql中truncate 、delete与drop区别

    SQL truncate .delete与drop区别   相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL ...

  7. js 支持的原始数据类型

    原始数据类型: 数值型: 1.十进制数 <script> var a =12; a = -12 a = 12.4 a =.23e2 //=>23 a = 2e3 //=>200 ...

  8. 剑指offer 连续子序列和

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 class Solution { public:     int FindGreatestSumOfSu ...

  9. Java基础——运算符

    一.赋值运算符 在前面的学习中,用到最多的是什么呢?就是“=” .例如:int money=1000;   //储存本金 使用“=”将数值1000放入变量money的存储空间中.“=”称为赋值运算符. ...

  10. springboot之banner

    1 在Main里面关闭 @SpringBootApplication@MapperScan("org.sselab.mapper")public class Application ...