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

如何在JMeter中对带OTP校验的Okta认证流程开展性能测试

JMeter录制Okta+Gmail OTP登录流程的方法
  • 先打开JMeter的HTTP(S)测试脚本录制器,配置好代理端口和证书,给浏览器设置对应代理,同时开启请求过滤规则,排除css、js、图片等静态资源请求,避免录制无效内容
  • 手动触发完整登录流程:先输入账号密码提交,等到OTP发送完成后,手动登录绑定的Gmail邮箱拿到最新的OTP码,填到登录页完成校验,全程的请求都会被JMeter捕获到
  • 录制完成后要先清理无效请求,标记出提交账号密码、提交OTP的核心请求,录制得到的只是请求模板,后续重放需要修改动态参数
这类带OTP认证应用的性能测试方案
  • 优先选择测试环境适配方案:如果是压测核心业务性能,可在测试环境临时关闭Okta的OTP校验逻辑,仅保留账号密码认证,不需要处理动态OTP获取,适配成本最低,也不会有并发限制问题,适合大压力测试场景
  • 若必须保留完整OTP链路做测试,可通过以下方式实现动态OTP获取:
    • 提前给所有测试用的Gmail账号开启IMAP权限,允许第三方客户端读取邮件
    • 在JMeter中添加JSR223 Sampler,写Groovy脚本调用Java Mail API,拉取对应测试账号的最新邮件,用正则提取邮件内容里的OTP值,存为JMeter变量
    • 将提取到的OTP变量关联到后续提交OTP的请求参数中,完成完整登录链路
  • 常规性能测试配置:将Okta返回的会话标识、Cookie等动态值做关联,用户账号密码做参数化,保证每个虚拟用户使用独立的测试账号,避免账号互踢导致登录失败
  • 压测注意事项:如果保留OTP链路测试,不要发起过高并发,避免触发Gmail的反爬限流规则,导致OTP拉取失败、测试结果失真;登录完成后要添加响应断言,校验登录成功的业务标识(比如用户信息接口返回值、首页特定字段),避免仅通过响应码判断登录结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 04:36:06