我们在机器人框架中收到以下错误“关键字'OperatingSystem.Create File'在命名参数之后得到位置参数”

Dee*_*i K 2 python robotframework

我们的一个测试用例中使用了以下机器人框架关键字:

${data_dict}=    Create Dictionary    apiproxy    ${APIPROXY}    request_verb    ${REQUEST_VERB}    basepath    **${basepath}**    pathsuffix    **${pathsuffix}**  

${data_file}=    generate data    ${data_dict}  

Create File    test.sh    content=${QPID_COMMAND}  ${QPID} -org ${ORG} -env ${ENVIRONMENT} -exchange ${exch_name} -queue ${queue_name} -useProtoBuf -noOfMessages  ${msg_count} -batchsize 1 -config ${data_file}  
Run Code Online (Sandbox Code Playgroud)

这里的值${basepath}

${basepath} = ${EMPTY} and ${pathsuffix} = /testpath/

当我尝试运行它时,"Keyword 'OperatingSystem.Create File' got positional argument after named arguments"会显示错误。我无法访问机器人框架文档。

Bry*_*ley 5

错误的字面意思是您不能x=y在位置参数之前放置命名参数(例如:)。在您在问题中显示的代码中,您为关键字提供了一个命名参数 ofcontent=${QPID_COMMAND}后跟另一个以 开头的参数${QPID}

可能是你有错别字,并且这两个之间不应该有两个空格?机器人之前将这两个空格${QPID}视为列分隔符,因此它认为${QPID}是一个单独的参数而不是内容的一部分。