android网络测试环境搭建方法杂谈(一)

本文章转载于搜狗测试

android网络测试环境搭建方法杂谈(一)_第1张图片

手机软件测试中,网络测试是很常见的,所以查看和修改请求与返回数据就是基础。本文介绍如何查看网络请求,以及如何搭建环境,后续再介绍修改请求数据以及更多应用。

下面介绍三种独立的方法。

1、使用fiddler

Fiddler是强大且好用的Web调试工具之一,它能记录客户端和服务器的http和https请求,允许你监视,设置断点修改输入输出数据。

1、配置fiddler允许被远程连接:

在一台windows机器上安装并打开fiddler,然后在fiddler options中勾选如下截图中红框中的复选框,并设置上面的端口号,默认为8888:

android网络测试环境搭建方法杂谈(一)_第2张图片

2、配置手机端wifi代理

在手机的wifi设置中,修改当前连接的wifi配置,里面会有代理服务器的设置,然后设置好fiddler所在机器的IP和端口8888(注意,fiddler所在机器和手机必须在一个局域网内)。

android网络测试环境搭建方法杂谈(一)_第3张图片

3、然后手机的网络交互信息就可以在fiddler中看到了:

android网络测试环境搭建方法杂谈(一)_第4张图片

优缺点:

1、环境搭建方便快速,数据查看直观,可以进行后续的修改上传和返回数据

2、只能在wifi环境下使用

2、修改hosts、到服务器上查看log

当需要抓包移动网络下的数据时,上面的方法就无效了,因为手机直接连接的是移动网、然后直接到达所需的服务器,中间无法架起WIFI桥梁进行抓包处理。此时可用如下方法:

修改系统hosts文件,把要检查的服务器域名指向测试ip,之后就可以到测试服务器上查看log了。

优缺点:

1、可以在任意环境下使用,包括移动网和wifi网

2、只能抓到指定域名(配置好hosts的域名)的log,无法像fiddler那样全部抓取

3、必须有搭建好的http测试服务器才行

4、如果移动网下,被指向的测试ip必须是公网ip

5、手机必须root

3、使用tcpdump

使用Linux底层抓包工具tcpdump,它可以抓取所有从Android发出的网络信息,不限于http、ftp等。方法如下:

前提条件:

1、手机需要root

2、电脑上安装WireShark(一款网络抓包工具),用于log分析

步骤:

1、把tcpdump传进手机,原则上任意路径均可,例如/data/local

2、修改tcpdump的权限为6755(使用任意文件工具,例如re、es):

(其实7777也没问题,但为了避免权限过滥,还是限制一下的好)

android网络测试环境搭建方法杂谈(一)_第5张图片

3、执行抓包:

连上adb后,运行

adb shell

cd /data/local/

./tcpdump -p -vv -s 0 -w /sdcard/capture.pcap

这样抓包就开始了,并把log存入/sdcard/capture.pcap

4、执行网络操作,于是log写入了;待网络操作完毕后,按ctrl+c中止

5、把log文件拷贝到电脑上,用WireShark打开,就能看到各种网络交互了。

优缺点:

1、可以在任意环境下使用,包括移动网和wifi网

2、只能查看请求数据,无法进行修改

3、手机必须root

你可能感兴趣的:(android网络测试环境搭建方法杂谈(一))