在 ROBOT 框架的变量中添加 Json 数据
Adding Json data in a variable in ROBOT framework
我开始致力于使用 ROBOT 框架自动处理 API 请求,并遇到了以下问题。
我有这个JSON数据
{
"password": "123456789",
"username": "test@test.com"
}
我想把上面的内容放在一个变量中并生成一个标记作为响应。
之前我用过下面的
${body}= create dictionary username=test@test.com password=123456789
我收到以下错误响应
HTTPError:415 客户端错误:url 不支持的媒体类型:
有人可以帮我解决这个问题吗?
更新代码
*** Settings ***
Library String
Library Collections
Library RequestsLibrary
*** Variables ***
Credentials
${prod_url} localhost:3000/api
*** Test Cases ***
User login and token generation.
Create Session demo ${prod_url}
${body}= create dictionary username=test@test.com password=123456789
${header}= create dictionary Content-Type=application/json
${login}= post on session demo /login data=${body} headers=${header}
log to console ${login.content}
以上是完整代码。我需要的是用户名和密码需要采用 JSON 格式,因为我的 API 只接受这些值..
尝试将字典传递给 json
参数而不是 data
参数:
${login}= post on session demo /login json=${body}
headers=${header}
当您使用 data
时,库按原样传递对象的字符串表示形式 - 而在 python 中,字典的 str 是 {'password': '123456789' ,...
- 例如它使用单引号,而不是双引号,这是无效的 json.
将 dict 传递给另一个参数 json
,将使其转换为正确的格式。
我开始致力于使用 ROBOT 框架自动处理 API 请求,并遇到了以下问题。
我有这个JSON数据
{
"password": "123456789",
"username": "test@test.com"
}
我想把上面的内容放在一个变量中并生成一个标记作为响应。
之前我用过下面的
${body}= create dictionary username=test@test.com password=123456789
我收到以下错误响应 HTTPError:415 客户端错误:url 不支持的媒体类型:
有人可以帮我解决这个问题吗?
更新代码
*** Settings ***
Library String
Library Collections
Library RequestsLibrary
*** Variables ***
Credentials
${prod_url} localhost:3000/api
*** Test Cases ***
User login and token generation.
Create Session demo ${prod_url}
${body}= create dictionary username=test@test.com password=123456789
${header}= create dictionary Content-Type=application/json
${login}= post on session demo /login data=${body} headers=${header}
log to console ${login.content}
以上是完整代码。我需要的是用户名和密码需要采用 JSON 格式,因为我的 API 只接受这些值..
尝试将字典传递给 json
参数而不是 data
参数:
${login}= post on session demo /login json=${body}
headers=${header}
当您使用 data
时,库按原样传递对象的字符串表示形式 - 而在 python 中,字典的 str 是 {'password': '123456789' ,...
- 例如它使用单引号,而不是双引号,这是无效的 json.
将 dict 传递给另一个参数 json
,将使其转换为正确的格式。