我正在实施一些REST服务。我所有的测试都是使用SoapUI进行的。 最近我决定采用JSON Web Token(JWT)进行身份验证,但我在SoapUI上找不到任何支持(本机安装或插件,没有)。
我找到了一些像http://jwtbuilder.jamiekurtz.com/这样的在线生成器,但是填写所有字段,一次又一次地复制/粘贴SoapUI,因为每个测试用例都没有效率。
我想知道是否有办法测试SoapUI中的JWT内容,或者我是否需要其他工具。有什么建议吗?
谢谢!
答案 0 :(得分:3)
我发现了一种半自动方式,可以在TestCases中保留有效的JWT令牌而不会丢失太多时间,使用包含令牌的外部文件。
在SoapUI中打开您的项目,并添加一个带有值的jwt
变量
${=new File('/path/to/token_file.txt').text}
在您的请求中,将您的变量引用为带有值的JWT标头
${#Project#jwt}
当令牌过期时,只需重新启动生成器脚本,SoapUI将自动加载新令牌。
答案 1 :(得分:0)
SoapUI将调用您的身份验证服务器并获取令牌,然后它将自动将该令牌放入授权标头(Bearer <token>
)中。
Add new authorization>OAuth 2>Resource owner password credential grant
然后将您的用户名和密码添加到客户端和资源部分。最后,将您的令牌端点作为访问令牌URL,并保存授权配置文件以用于其他测试案例。