jmeter 无法捕获HTTPS请求-移动的性能测试

d7v8vwbk  于 2022-11-09  发布在  其他
关注(0)|答案(2)|浏览(201)

Android TAB和JMeter用于捕获/记录应用程序流。但JMeter中未捕获HTTPS请求。我关闭了JMeter并启用了Charles Proxy,然后再次进行了记录。在Charles中记录了相同的应用程序流后,我将所有HTTPS请求放入JMeter中。由于我进行了两次记录,因此花费了更长的时间。
是否有其他方法可以通过JMETER捕获HTTPS流量?
感谢您的帮助并分享您的建议。
问候你,湿婆

rjee0c15

rjee0c151#

首先使用JMeter记录模板然后启动JMeter的HTTP(S)测试脚本记录器,它将在jmeter/bin文件夹中生成一个名为ApacheJMeterTemporaryRootCA.crt的文件。将文件复制到您的Android设备并将其安装为CA证书。请参阅How do I install a user certificate?线程以了解更多详细信息。
证书的生存期有限(默认为7天),但您可以通过在www.example.com中设置来延长它user.properties
代理证书有效期=天数
现在,您在Android〉= 7.0中将面临的问题是,应用程序默认情况下仅使用系统安装的证书。
因此,您需要要求应用程序的开发人员修改APK,看看为什么here.
编辑清单并添加:
网络安全配置="@xml/网络安全配置”
您将获得:
...
然后在res/xml/network_security_config.xml中添加以下内容:

<?xml version="1.0" encoding="utf-8"?>
 <network-security-config>  
       <base-config>  
             <trust-anchors>  
                 <!-- Trust preinstalled CAs -->  
                 <certificates src="system" />  
                 <!-- Additionally trust user added CAs -->  
                 <certificates src="user" />  
            </trust-anchors>  
       </base-config>  
 </network-security-config>

请注意,无论您使用什么工具(Neoload、LoadRunner...),都需要使用此工具。

0kjbasz6

0kjbasz62#

某些Android版本仅支持开箱即用的HTTP代理,您可能需要安装ProxyDroid等第三方软件才能配置HTTPS代理。
更简单的选择是使用Mobile Recorder解决方案,如果您对JMeter方面的配置的正确性有疑问,您可以测试移动的Recorder。

相关问题