【问题标题】:How do I initialize variables used for importing libraries in Ride?如何初始化用于在 Ride 中导入库的变量?
【发布时间】:2016-06-22 18:33:51
【问题描述】:

我有一个自定义机器人框架库,它接受一个参数来初始化它。

    *** Settings ***
    Library           NotifyUsers    ${max_messages}

使用 pybot 从命令行执行时效果很好:

pybot --variable max_messages:4 my_test

但是,Ride 在启动时导入库时,此变量不存在。我尝试在“运行”选项卡的“参数”字段中定义它,但在您运行测试之前不会实例化。

如果我替换变量并硬编码一个整数参数,它在 Ride 中可以正常工作。

【问题讨论】:

  • 我不明白“我已经尝试在运行选项卡的参数字段中定义它,但在您运行测试之前它不会被实例化”。在运行测试之前不需要定义变量,那么问题是什么? RIDE 是否只是以您不想要的方式对其进行着色?
  • 您是否考虑过对 max_messages 使用合理的默认值并在库中公开一个关键字来覆盖它?这听起来像是一个库参数,在实例化时不需要指定,也不需要是库参数。
  • @BryanOakley Ride 在运行测试之前加载库。这允许 Ride 提供上下文帮助、突出显示等。如果库需要一个变量,那么该变量也需要在运行时之前存在。这是我问题的症结所在。当我使用变量作为参数来导入库时,它没有任何要解析的内容,因此导入失败。当我用整数替换变量时,它导入就好了。

标签: robotframework


【解决方案1】:

向布莱恩·奥克利道歉!我以某种方式设法删除了他的答案,这为我指明了正确的方向。

向变量表添加条目并不能解决此问题,但是使用变量文件可以! Ride 似乎会在启动时导入变量文件。测试套件中包含的变量表直到运行时才会解析。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-10
    • 2019-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多