robotframework中使用expected_status进行post请求后关键字名称不能为空

问题描述 投票:0回答:1

在此处输入图像描述我要通过预期状态的发布请求创建否定测试,但我遇到关键字名称不能为空消息。

InvalidPassword Test
    [Tags]    InvalidPassword
    Create Session    InvalidPassword     ${url_api}/${end_point_login}    
    Log To Console    ${url_api}/${end_point_login}
    ${body}=    Create Dictionary    mobile=*****     password=******        key=1
    ${header}=    Create Dictionary           Accept=application/Json
    ${response}=    POST On Session    InvalidPassword    ${url_api}/${end_point_login}    data=${body}    expected_status=422 

在此输入图片描述

robotframework web-api-testing
1个回答
0
投票

请参阅 Robot Framework 生成的 report.html 文件来跟踪问题,但是,我从您共享的代码中为您提供了一些提示:

  • 如果您在创建会话时发送了 base_address/uri,请在创建 post 请求时发送一个空字符串,例如“”。如果您在创建会话时发送了 base_address,请在创建帖子时发送 uri。

示例:

*** Variables ***
${base_address}     base_address of your API
${uri}
Create Session    InvalidPassword     ${base_address}
POST On Session   InvalidPassword     ${uri}

Create Session    InvalidPassword     ${base_address}/${uri}
POST On Session   InvalidPassword     ""
  • 创建 post 请求时,发送请求的 headers 并使用 json 而不是使用 data。

示例:

${response}=    POST On Session    InvalidPassword    ${uri}    json=${body}    headers=${header}    expected_status=422
© www.soinside.com 2019 - 2024. All rights reserved.