如何使用 JMeter 传递随机用户/通行证(用于基本身份验证)?
我正在使用 JMeter 对 API 进行压力测试。我已经设置了基本身份验证
- 似乎运行良好。
现在,我正在尝试随机化 JMeter 通过网络传递的凭据。所以,我知道有两种方法可以做到这一点。
- 添加自定义
HTTP 标头
(通过HTTP 标头管理器元素
),然后将值设置为随机字段(即我从 csv 文件中读取的内容) - 使用
HTTP 授权管理器元素
并在其中传递用户名和密码。
现在,如果我尝试使用上面的方法 (1),我需要创建以下标头/数据:-
Authorization: Basic <some Base64 encoded string in the format username:password>
eg.
Authorization: Basic OnVzZXIxOnBhc3Mx
Kewl.简单的。但是该标头值没有通过线路传递:(我可以添加任何其他标头类型,并且它通过线路传递..
嗯..好吧然后..让我们尝试方法(2)。
现在可以了..但我可以仅硬编码在用户名和密码中,我看不到如何传递用户名VARIABLE(即${usernmae}
) )或密码VARIABLE(即${password}
)....如果是硬编码的,那么服务器会正确回复正确的页面/数据,
因此..有人可以帮忙吗?
I'm using JMeter to stress test an API. I've got Basic Authentication
set up - seems to be working great.
Now, i'm trying to randomize the credentials that JMeter passes across the wire. So, there's two ways I know I can do this.
- Add a custom
HTTP Header
(via anHTTP Header Manager Element
) and set then value to the random fields (ie. something I've read in from a csv file) - Use the
HTTP Authorization Manager Element
and pass in the username and password there.
Now, if I try and use method (1) above, I need to create the following header/data :-
Authorization: Basic <some Base64 encoded string in the format username:password>
eg.
Authorization: Basic OnVzZXIxOnBhc3Mx
Kewl. simple. BUT that header value is not getting passed across the wire :( I can add any other header type and it's passed across the wire..
hmm .. ok then .. lets try method (2).
Now that works .. but I can only hardcode in the username & password. I can't see how I can pass in a username VARIABLE (ie. ${usernmae}
) or a password VARIABLE (ie. ${password}
).... If it's hardcoded, then the server correctly replies with the correct page/data.
so .. can someone please help?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我建议尝试以下操作:
或者,如果您希望登录时的值是真正随机的,可以使用一些函数来生成随机数或在执行时发送。
I would recommend trying the following:
Alternately, if you want the value to be truely random for the login, there are some functions you can use to generate random numbers or send in the time of execution.