我开发了基于JAXRS的REST WebAPI。它基于令牌的授权机制。它与OAuth 2.0非常相似:
所以,我需要创建一个JMeter测试来测试我的webapi。
1. Get Authorization Code (on http://www.host.com/authz) Request: [ Header: 'response_type', Value: 'code'] [ Header: 'client_id', Value: 'FIXED ID STRING'] [ Header: 'username', Value: '$USER provided from a data source' ] [ Header: 'password', Value: '$PASSWORD provided from a data source'] Response: [ Header: 'code', Value: '%AuthorizationCode' ] [ Header: 'expires_in', Value: '100'(seconds)]2. Get Access Token Request: [Header: 'grant_type', Value: 'authorization_code'] [Header: 'code', Value: '%AuthorizationCode provided on the last request'] [Header: 'client_id', Value: 'FIXED ID STRING'] Response: [Header: 'access_token', Value: '%AccessToken'] [Header: 'expires_in', Value: '500'(seconds)] [Header: 'refresh_token', value: '%RefrestToken']
在那场舞会之后,我获得了%AuthorizationCode ,%AccessToken 和%RefreshToken 。
从现在开始,我可以使用这些代码访问webapi。
ForEach user in a datasource: Loop Forever: Send Http request each X seconds (on http://www.host.com/webapi) [Header: 'Authorization', Value: 'OAuth + %AccessToken']
我绝对不知道如何建立这个。
例如:我想测试50个用户并在6分钟内执行100次webapi方法。
有什么想法吗?
答案 0 :(得分:3)
code
等)来请求标头。将其添加为HTTP请求的子项,并使用所需的标头名称和值进行填充。 CSV数据集配置中定义的JMeter Variables也将播放AccessToken
Authorization
标头,如第2点所述。