Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有没有办法使用空手道DSL获得会话存储?_Javascript_Java_Karate_Session Storage - Fatal编程技术网

Javascript 有没有办法使用空手道DSL获得会话存储?

Javascript 有没有办法使用空手道DSL获得会话存储?,javascript,java,karate,session-storage,Javascript,Java,Karate,Session Storage,我目前需要获取会话存储密钥下的身份验证令牌,并在其他API调用中使用它。我正在使用空手道UI自动化来访问浏览器和页面,但我无法访问会话存储。我还考虑过使用一些JS来获得它,但我不确定它是否有效。有人有什么想法吗?我假设您有一个API调用,可以让您登录并获取会话存储密钥? 您可以创建一个功能文件,将详细信息发送到登录,然后记录从响应返回的会话存储密钥 e、 g。 背景: * def userData = read('classpath:userData.json') Scenario: Logi

我目前需要获取会话存储密钥下的身份验证令牌,并在其他API调用中使用它。我正在使用空手道UI自动化来访问浏览器和页面,但我无法访问会话存储。我还考虑过使用一些JS来获得它,但我不确定它是否有效。有人有什么想法吗?

我假设您有一个API调用,可以让您登录并获取会话存储密钥? 您可以创建一个功能文件,将详细信息发送到登录,然后记录从响应返回的会话存储密钥

e、 g。 背景:

* def userData = read('classpath:userData.json')

Scenario: Login user and get session token for subsequent tests
Given baseUrl 'www.yoursite.com/LoginRequest'
And request userData
When method POST
Then status 200
And def r = response
* def token = r.Key1
* header Authorization = token

然后,在需要获取会话存储密钥的任何时候,都可以调用该功能文件。

使用
script()
应该很容易。我刚刚在测试中尝试了这两个语句,效果很好:

* script("sessionStorage.setItem('foo', 'bar')")
* match script("sessionStorage.getItem('foo')") == 'bar'

我使用的是0.9.5.RC5版本,文档如下:

我不知道这个脚本()功能!我在读master branch的文档,而不是develop。谢谢你的帮助!