首页 文章

Robot Framework Requests Library:设置会话cookie

提问于
浏览
-1

我正在尝试使用Robot Framework中的RequestsLibrary创建会话 . 第一个API调用是“身份验证步骤” . 此步骤要求我为剩余的API调用存储cookie . 通常,我会用

curl -c cookie.txt -d 
"j_username=foo%40inq.com&j_password=pass123&submit=Login" https://api.company.com/j_spring_security_check

但据我了解,RequestsLibrary不支持curl命令?下面是我试图执行的代码示例

*** Settings ***
Documentation       API

Library     RequestsLibrary
Library     Collections
*** Variables ***
${headers}      Create Dictionary    Content-Type    application/json    Accept    application/json
*** Test Cases ***
Tester
Create Session    TC  https://api.company.com/j_spring_security_check?j_username=regression1@att&j_password=TCpass1234&submit=Login  ${headers}  cookies.txt

如果我将cookie参数保留为None,它可以工作,但是我无法运行测试的其余部分:

${result}=  Post Request       TC       https://api.company.com/engagementAPI/v1/agent/login?username=regression1@att&password=TCpass1234&output=json     headers = ${headers}

帖子工作,但我没有得到所需的响应,就像我在Swagger UI中运行它一样

谢谢

1 回答

  • 1

    cookies 参数需要将实际的cookie包含为字典,而不是文件名 .

    例如:

    ${cookies}=  Create Dictionary   foo=bar  
    Create Session  session  ${url}  cookies=${cookies}
    

相关问题