CSRF TOKEN 和具有 JESSION ID 的 cookie 不会传递到空手道中的不同场景
CSRF TOKEN and cookies having JESSION ID are not passed to different scenario in the karate
场景 1:
url: path1
Method : POST
Headers
Accept
Content-Type
Form fields:
Username
Password
url: path2
Method:get
Headers
Accept
Content-Type
路径 2 的输出是 CSRF TOKEN
并且 cookie 具有 JESSION ID
场景 2:
为了在场景 2 中调用任何路径,我们需要传递 path2 输出,即 CXRF TOKEN
和 JSESSIONID
问题:
对于我们的测试用例,我们需要始终将 jsession id(此 jession id 应仅从 path2 中获取)和来自 path2 的 csrf 令牌传递给所有后续调用。现在没有发生
1>Csrf token is not getting passed to scenario2
2>JESSION ID created here is different from the jesession id from path2
想知道是否有办法将此 csrf 令牌和 jesession id headers 传递给不同的场景?
首先阅读文档,然后查看这些特定示例:call-updates-config.feature and common.feature
我会这样做:
- 在继续之前,先尝试让所有的东西都作为一个单一的场景运行。通常你不需要手动设置 cookies
- 编写一个可重复使用的功能,调用
path1
和 path2
并将其保留在 common.feature
中。
- 在
common.feature
的末尾将 CSRF 令牌和 JSESSIONID 的值设置为变量
- 现在您可以编写第二个调用
common.feature
的功能或场景。再次,请阅读文档,有很多关于如何从另一个功能调用一个功能并传递变量的示例
- 正如我所说,您通常不需要对 cookie 做任何事情,但您应该能够像这样设置 cookie(请参阅
cookie
的语法):* cookie JSESSIONID = yourVariableName
- 类似地使用
header
关键字或任何适合正确设置 CSRF 令牌的关键字
场景 1:
url: path1
Method : POST
Headers
Accept
Content-Type
Form fields:
Username
Password
url: path2
Method:get
Headers
Accept
Content-Type
路径 2 的输出是 CSRF TOKEN
并且 cookie 具有 JESSION ID
场景 2:
为了在场景 2 中调用任何路径,我们需要传递 path2 输出,即 CXRF TOKEN
和 JSESSIONID
问题:
对于我们的测试用例,我们需要始终将 jsession id(此 jession id 应仅从 path2 中获取)和来自 path2 的 csrf 令牌传递给所有后续调用。现在没有发生
1>Csrf token is not getting passed to scenario2
2>JESSION ID created here is different from the jesession id from path2
想知道是否有办法将此 csrf 令牌和 jesession id headers 传递给不同的场景?
首先阅读文档,然后查看这些特定示例:call-updates-config.feature and common.feature
我会这样做:
- 在继续之前,先尝试让所有的东西都作为一个单一的场景运行。通常你不需要手动设置 cookies
- 编写一个可重复使用的功能,调用
path1
和path2
并将其保留在common.feature
中。 - 在
common.feature
的末尾将 CSRF 令牌和 JSESSIONID 的值设置为变量 - 现在您可以编写第二个调用
common.feature
的功能或场景。再次,请阅读文档,有很多关于如何从另一个功能调用一个功能并传递变量的示例 - 正如我所说,您通常不需要对 cookie 做任何事情,但您应该能够像这样设置 cookie(请参阅
cookie
的语法):* cookie JSESSIONID = yourVariableName
- 类似地使用
header
关键字或任何适合正确设置 CSRF 令牌的关键字