You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用JMeter 5.4.1录制.Net应用时permission相关页面返回500或异常响应

JMeter录制.NET应用权限相关页面报错解决方案

运行环境

  • JMeter版本:5.4.1
  • 测试浏览器:MS Edge 94.0、Google Chrome 94.0、FireFox 92.0.1

问题特征

90%的普通页面录制流程完全正常,无页面崩溃问题,响应返回正确;仅发起permission.aspx或permission.asp页面相关请求时,会触发报错,或页面展示错误响应内容。已尝试将录制类型从httpclient4切换为Java,问题未解决。

报错信息

JMeter日志错误

Cause: java.io.IOException: Server returned HTTP response code: 500 for URL: https://xxxx.xx.xx.com/

服务端返回异常详情

USERID:
ASP.Net EXCEPTION:
StatusCode: 200
Error Message: Exception of type 'System.Web.HttpUnhandledException' was thrown.(错误信息:已引发“System.Web.HttpUnhandledException”类型的异常)
Inner Exception: System.NullReferenceException: Object reference not set to an instance of an object.(内部异常:System.NullReferenceException:未将对象引用设置到对象的实例)

根因判断

该异常本质是.NET服务端的空引用报错,触发原因是JMeter录制时未完整携带权限页面依赖的特定请求参数、请求头或Cookie。权限类页面通常会额外校验会话上下文、请求来源、.NET专属身份校验令牌等强校验字段,普通页面的通用录制规则无法覆盖这类场景。

解决步骤

  • 录制前清空浏览器全部Cookie、缓存,先手动完整走一遍从登录到访问permission页面的流程,确认页面可正常加载后再启动JMeter录制,不要跳过前置身份校验步骤直接访问权限页面。
  • 打开JMeter的HTTP(S) Test Script Recorder配置页,在Requests Filtering标签下取消所有针对Cookie、请求头的过滤规则,确保.NET特有的__RequestVerificationToken、.ASPXAUTH等身份校验字段被完整录制。
  • 录制完成后,将JMeter捕获的permission相关请求,与浏览器开发者工具中捕获的正常请求做逐字段比对,补充缺失的Referer、Origin请求头,以及表单提交所需的所有隐藏字段参数。
  • 若重放仍报错,在权限请求同级添加HTTP Cookie Manager,勾选Clear cookies each iteration,手动补全权限校验依赖的Cookie键值对后再测试。

内容的提问来源于stack exchange,提问作者Qlee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 16:42:04