我是机器人框架新手。我正在尽我所能去尝试,但是由于某些原因,我仍然无法得到正确的结果。我试图使用Rest和RestInstance库的组合为网站创建会话,然后记录API的响应。
当我使用下面的方法时,我得到了这个错误。
15:52:15.075失败ValueError:需要超过一个值才能打开包
Get User API Response
${auth}= Create List ${example_email} ${pwd}
Create Session a website/api/sign_in ${headers} 123 ${auth}当我使用此方法时,我无法成功地创建一个带有帐户登录的活动会话,从而返回不正确的信息。
${headers}= Create Dictionary csrf_token=123
Create Session a website/api/sign_in ${headers} 123 ${auth}
Rest.Get website/api/sign_in
Rest.Output response我不明白我做错了什么。如果有人能指点正确的方向,我会感激不尽。
发布于 2019-01-04 10:17:35
问题在于你调用Create Session的方式--参数中"123“的目的是什么?
看看图书馆文献 --那个位置上的论点是cookies,它一定是字典。
所以要么创建一本字典并把它传递到那里:
${cookies}= Create Dictionary var=123
Create Session a website/api/sign_in ${headers} ${cookies} ${auth},或者显式映射要传递给关键字的参数的参数:
Create Session a website/api/sign_in headers=${headers} auth=${auth}(我从第二个例子中删除了"123“-我不确定它的目的是什么,例如它是哪个参数)
发布于 2019-01-04 09:30:07
您可以执行以下操作--您正在尝试做正确的事情--只需将Rest.Ouput赋值给一个变量,这样您就可以记录它或验证响应
*** Keywords ***
Sample Rest
${Response_Body_Verify} = set variable Sample Data
${headers}= Create Dictionary csrf_token=123
Create Session a website/api/sign_in ${headers} 123 ${auth}
Rest.Get website/api/sign_in
${Response} = Rest.Output response body
should be equal ${Response} ${Response_Body_Verify}https://stackoverflow.com/questions/54035278
复制相似问题