指定' WITH NAME'的正确方法是什么?从单个测试用例访问多个robotframework远程服务器?

时间:2014-08-21 21:18:01

标签: integration-testing robotframework

根据http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#remote-library-interface的文件,它非常简单。所以我尝试了那里描述的内容:

*** Settings ***
Library       Remote   http://${ADDRESS}:${PORT}   WITH NAME LinuxHost
Library       Remote    http://${ADDRESS}:${PORT}  WITH NAME WindowsHost

*** Variables ***
${ADDRESS}    127.0.0.1
${PORT}       8270

*** Test Cases ***
Example
    WindowsHost.Start Process  /bin/sleep    60  
    LinuxHost.Start Process    /bin/sleep    60  
    LinuxHost.Run Process      /bin/sleep    20

失败
Error in file 'processtest.txt': Test Library 'Remote' expected 0 to 1 arguments, got 2.

我正在运行这样的python远程服务器:

from robot.libraries import Process 
r=robotremoteserver.RobotRemoteServer(Process.Process(),'0.0.0.0')

当我只有一个没有' WITH NAME'关键字它工作正常。这是robotserver 2.8.5。

这是来自Multiple remote libraries with robot framework的相反问题。

1 个答案:

答案 0 :(得分:1)

WITH NAME与后面的名字之间没有足够的空格。您需要两个或多个空格,以便WITH NAME单独位于列中。

机器人在单元格中查找文字单词WITH NAME - 以及这些单词。由于你没有足够的空间将它与下一个单元隔开,因此机器人认为这只是远程库的另一个参数。

从文档(强调我的):

  

指定新名称的基本语法是在库名之后使用文本WITH NAME(不区分大小写),然后在下一个单元格中使用新名称