Charles Proxy

测试需要时如何配置 Charles Proxy

Kostya avatar
作者:Kostya
一周前更新

动机

在某些测试中,您可能需要使用网络调试代理工具来记录测试设备与互联网之间的数据流量。用于此目的的工具之一称为 Charles Proxy,您在与我们的一些客户进行测试时可能需要使用它。正确安装和配置 Charles Proxy 的过程如下。

第一步 在电脑上设置 Charles Proxy

对于 Web 和 App 测试,您都需要一台计算机,并在上面安装 Charles Proxy 程序。

  1. 此处下载与您电脑系统匹配的 Charles Proxy 试用版。

  2. 安装 Charles Proxy 应用程序。

  3. 在 Charles 应用程序中,转到菜单项代理 > 外部代理设置

  4. 勾选使用外部代理服务器复选框。

  5. 勾选 Web 代理 (HTTP) 复选框,并勾选代理服务器需要密码。输入以下代理详细信息字段:

    1. 网络代理服务器:forward.test.io:3128

    2. 域:forward.test.io

    3. 用户名:您可以在测试说明中找到此信息。

    4. 密码:您可以在测试说明中找到此信息。

  6. 勾选安全网络代理(HTTPS)复选框,并勾选代理服务器需要密码。重复上一步的详细信息字段。

  7. 单击确定按钮保存设置。

现在,TEST IO 代理已正确保存为代理应用程序中的外部代理。

在 Windows 计算机上安装 SSL 证书

在尝试导航到要测试的客户网站之前,必须在设备上安装 SSL 证书,以便正确捕获互联网流量。

前提条件 已安装并配置计算机上的 Charles Proxy

  1. 在计算机上启动 Charles Proxy 应用程序。

  2. 在菜单中,导航至帮助 > SSL 代理 > 安装 Charles 根证书

  3. 单击安装证书...并选择当前用户

  4. 单击 "下一步"。系统将提示你选择证书在系统中的存放位置。

  5. 选择将所有证书放入以下存储区,然后点击 浏览...

  6. 选择受信任的根证书颁发机构,然后点击确定

  7. 点击下一步,然后点击完成

  8. 重新启动计算机完成安装。

现在,Charles Proxy SSL 证书已完全安装到您的设备上。

设置 iOS 设备

前提条件 已安装并配置计算机上的 Charles Proxy

  1. 确保移动设备和电脑连接到同一个 WiFi 网络。

  2. 在计算机上启动 Charles Proxy 应用程序。

  3. 在菜单中,导航到菜单项帮助 > SSL 代理 > 在移动设备或远程浏览器上安装 Charles 根证书。这时会打开一个窗口,给出本地 IP 地址和使用端口

  4. 在 iOS 设备上,进入 Wifi 设置,点击 Wifi 旁边的蓝色"i"图标。

  5. 在屏幕底部,点击配置代理,然后点击手动选项。

  6. 在服务器字段中输入本地 IP 地址,并在步骤 3 中输入 Charles Proxy 应用程序给出的端口

  7. 保存设置 > 计算机上会出现一个对话框,请求允许这一新的访问权限。

  8. 给予许可。

现在,您设备的互联网流量将通过 Charles Proxy 传输。从现在起,只有在电脑中打开 Charles Proxy 应用程序时,设备上的互联网才能正常工作。

在 iOS 上安装 SSL 证书

在尝试启动要测试的客户应用程序之前,必须在设备上安装 SSL 证书,以便正确捕获互联网流量。

先决条件:

  1. 使用移动设备上的 Safari 浏览器导航至 chls.pro/ssl。设备上会出现安装 SSL 证书的对话框。

  2. 允许安装证书。此时会出现一个对话框,说明您必须在设备上的 "设置 "应用程序中查看配置文件。

  3. 关闭模式和 Safari 浏览器。

  4. 导航到设备上的 "设置 "应用程序,按照 常规>VPN 和设备管理>下载的配置文件的路径选择 Charles Proxy CA

  5. 点击安装,将证书安装到设备上。系统将提示您输入设备密码。验证成功后,将显示一个警告屏幕。点击安装完成证书安装。

  6. 系统将显示已安装配置文件确认窗口。按完成即可。

  7. 返回设置>常规子菜单,并导航至关于>证书信任设置

  8. 启用 Charles Proxy CA 证书。

  9. 此时会弹出一个警告屏幕。点击继续

现在,Charles Proxy SSL 证书已完全安装到您的设备上。

设置 Android 设备

前提条件 已安装并配置计算机上的 Charles Proxy

  1. 确保您的移动设备和电脑在同一个 WiFi 网络上。

  2. 在电脑上启动 Charles Proxy 应用程序。

  3. 在菜单中,导航至帮助 > SSL 代理 > 在移动设备或远程浏览器上安装 Charles 根证书
    这时会打开一个窗口,给出本地IP 地址和要使用的端口

  4. 在 Android 设备上,进入 Wifi 设置,选择编辑当前网络。

  5. 查找代理选项并选择手动

  6. 在 "代理主机名 "字段中输入本地 IP 地址,并输入步骤 3 中代理应用程序给出的 "端口"。

  7. 保存设置 > 计算机上会出现一个对话框,请求允许这一新的访问权限。

  8. 给予许可

现在,您设备的互联网流量将通过 Charles Proxy 传输。从现在起,只有在电脑中打开 Charles Proxy 应用程序时,设备上的互联网才能正常工作。

在 Android 10 或更低版本上安装 SSL 证书

先决条件:

在尝试启动要测试的客户应用程序之前,必须在设备上安装 SSL 证书,以便通过完成以下步骤正确捕获互联网流量:

  1. 使用移动设备上的 Chrome 浏览器导航至 chls.pro/ssl。*.crt "证书文件将开始下载到你的设备。

  2. 打开下载的文件并进行身份验证。

  3. 为证书提供任意名称,并确保在证书使用下选择了VPN 和应用程序选项。

  4. 点击确定

现在,Charles Proxy SSL 证书已完全安装到您的设备上。

在 Android 11+ 上安装 SSL 证书

在尝试启动要测试的客户应用程序之前,必须在设备上安装 SSL 证书,以便通过完成以下步骤正确捕获互联网流量:

先决条件:

  1. 使用移动设备上的 Chrome 浏览器导航至 chls.pro/ssl。*.crt "证书文件将开始下载到您的设备。

  2. 文件下载完成后,导航到设备的设置应用,寻找类似从设备存储安装的选项(通常位于设备的高级安全设置中)。

  3. 如果出现警告屏幕,请选择CA 证书,然后选择无论如何安装

  4. 验证并查找下载的 "*.crt "文件。

  5. 选择下载的文件并点击完成

现在,Charles Proxy SSL 证书已完全安装到您的设备上。

捕捉日志

前提条件: 确保已按照上述说明在计算机上安装并配置了 Charles Proxy。还要确保 SSL 证书已正确安装到用于测试的设备中。

先决条件:

  • 捕捉计算机流量日志: 确保代理菜单项下的Windows 代理选项已启用

  • 捕捉手机流量日志: 确保菜单项代理下的Windows 代理选项为禁用

注意:捕获日志时,始终确保每次只有一台设备连接到 Charles Proxy,否则所有设备的流量数据都将记录在日志中。

  1. 在计算机上启动 Charles Proxy 应用程序。

  2. 在菜单中,导航至代理 > SSL 代理设置...

  3. 确保勾选 "启用 SSL 代理 "复选框,然后在 "包括 "部分单击 "添加"。

  4. 输入要监控的客户服务器和端口(每个测试周期都会提供此信息)。

  5. 单击确定返回SSL 代理设置窗口。

  6. 再次单击确定保存设置。

现在,Charles Proxy 代理将仅对所选服务器应用 SSL 代理。要启动新会话,必须

  1. 确保记录按钮(位于 Charles Proxy 应用程序主菜单右下方的红圈)已启用。

  2. 单击子图标清除过去的日志。

  3. 导航到测试环境(打开客户应用程序或导航到网站的登陆页面)。

  4. 导航到测试环境(打开客户应用程序或导航到网站的登陆页面)。

  5. 完成后,禁用记录按钮,停止捕捉日志。

  6. 在菜单中,导航至 文件>会话另存为...,选择保存文件的位置,为文件命名,并确保选择了 "查尔斯会话文件(.chls)"扩展名。

现在就可以保存 Charles Proxy 日志文件并提交了。

常见问题

我如何知道 Charles Proxy 能否正常工作?

  • 您可以通过打开 Charles Proxy 应用程序,单击要检查的服务器,导航到概览>备注信息,检查 Charles Proxy 是否在特定服务器上工作,其值应为此主机已启用 SSL 代理

  • 值为此主机未启用 SSL 代理在代理菜单的 SSL 代理设置中启用意味着你没有将当前服务器添加到 SSL 代理列表中。你可以访问SSL 代理设置选项手动添加服务器,也可以右键单击服务器并选择启用 SSL 代理选项。 You can either add the server manually by visiting the SSL Proxying Settings options or you can right click on the server and select the Enable SSL Proxying option.

注意:您可能需要启动新的日志会话才能应用新设置。

错误报告中捕获的截屏是否应与 Charles Proxy 日志相匹配?

就像捕获崩溃日志一样,如果您需要在日志中提供截屏(例如提交错误报告时),Charles Proxy 日志和截屏的时间戳必须一致,否则您的日志将无效。

能否在崩溃报告中使用 Charles Proxy 日志?

Charles Proxy 日志不能取代崩溃日志,因此如果您要报告崩溃,而使用 Charles Proxy 也是周期的要求之一,则必须将两者都附在报告中。

我在 Android 设备上找不到安装 SSL 证书的选项。

安卓设备上安装 SSL 证书选项的位置因设备而异。您可以使用每个周期内的聊天功能,请求帮助在您的设备上找到该选项。

为什么我在成功完成教程后,没有使用 Charles Proxy 就无法上网?

如果您完成了上述所有步骤,您设备的流量数据将被路由到 Charles Proxy 电脑应用程序。完成测试会话后,您可以关闭 Charles Proxy 电脑应用程序,并将移动设备的代理设置恢复为 ""(Android)或 "关闭"(iOS)。这样,您就可以关闭与电脑的连接,重新正常上网了。

Charles Proxy 应用程序在会话过程中关闭。发生了什么事?

Charles Proxy 电脑程序最多只能使用 30 分钟,从您打开程序开始计算。因此,如果您的应用程序已经打开了一段时间,而您又发现了新的错误,建议您关闭查尔斯代理程序,然后再次打开,这样 30 分钟的限制就会重置,您就有时间记录日志了。

我没有台式电脑,也没有 WiFi 连接。我还能使用 Charles Proxy 进行测试吗?

很遗憾,必须使用 Windows、MacOS 或 Linux PC 与您的移动设备连接到相同的 WiFi,才能捕获 Charles Proxy 日志。如果您不符合此要求,则必须暂时跳过此循环。

为什么在成功设置后,Charles Proxy 应用程序仍无法捕获我的浏览器日志?

通常情况下,VPN 和其他系统应用程序或设置(如防火墙或杀毒软件)可能会干扰 Charles Proxy 应用程序。我们建议关闭所有 VPN 连接并卸载所有浏览器扩展,以确保 Charles Proxy 应用程序是唯一从您的设备链接到测试环境的代理。您也可以使用其他浏览器监控流量。

这是否解答了您的问题?