jmeter - 致命警报:记录本机移动应用程序时 jmeter 中的证书未知
问题描述
我正在尝试使用 jmeter HTTP(S) 测试脚本记录器记录本机应用程序性能测试,并且在移动设备中安装 ApacheJMeterRootCA 证书并配置代理设置后,每当我打开应用程序并尝试使用它时,我都会收到 certificate_unknown 错误
注意:使用 JDK8 和 JMeter 4.0
解决方案
假设 JMeter 配置正确(即您已将 JMeter 的自签名证书导入设备并且设备代理配置与HTTP(S) 测试脚本记录器设置匹配)您应该能够正常记录您的应用程序流量。
除非您使用的是最新的 Android 版本(Nougat 7或更高版本),否则您需要修改应用程序源代码以将应用程序配置为信任用户证书。
将下一行添加到您的应用程序清单(在
application
标记下)android:networkSecurityConfig="@xml/network_security_config"
在应用程序的文件夹下添加
network_security_config.xml
文件res
并将以下代码放入其中:<?xml version="1.0" encoding="utf-8"?> <network-security-config> <debug-overrides> <trust-anchors> <!-- Trust user added CAs while debuggable only --> <certificates src="user" /> </trust-anchors> </debug-overrides> </network-security-config>
- 重建您的应用程序并在调试模式下运行它 - 现在 JMeter 应该能够捕获请求。
更多信息: