Api Robot框架请求库:设置会话cookie
我正在尝试在Robot框架中使用RequestsLibrary创建会话。第一个API调用是“身份验证步骤”。这一步需要为其余的API调用存储cookie。通常,我会使用Api Robot框架请求库:设置会话cookie,api,python-requests,robotframework,Api,Python Requests,Robotframework,我正在尝试在Robot框架中使用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不支持cu
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}
这篇文章很有效,但我没有得到想要的响应,就像我在Swigger UI中运行这篇文章一样
谢谢参数
cookies
需要包含实际的cookies作为字典,而不是文件名
例如:
${cookies}= Create Dictionary foo=bar
Create Session session ${url} cookies=${cookies}
在问这个问题之前,你似乎没有做过任何研究。请看“请给我看一个链接,在那里你可以找到我问题的答案,甚至可以找到有用的文档。”。事件请求库的文档是一个笑话:RequestsLibrary只是python包的包装器(它在您链接到的文档顶部提到)。我查看了RequestLibrary的代码,以查看它调用了哪些较低级别的函数,然后阅读了requests文档,以了解该函数所期望的是什么。另外,我还搜索了stackoverflow,找到了几个使用RequestsLibrary和Cookie的示例。