Robotframework ROBOT框架:在参数文件中使用环境变量
下面是我想做的一个基本概述: 我想使用参数文件调用脚本。但是参数文件需要处理路径的环境变量。因此,例如,参数文件可能是: args.robotRobotframework ROBOT框架:在参数文件中使用环境变量,robotframework,Robotframework,下面是我想做的一个基本概述: 我想使用参数文件调用脚本。但是参数文件需要处理路径的环境变量。因此,例如,参数文件可能是: args.robot [ROBOT_HOME variable]/test1.robot [ROBOT_HOME variable]/test2.robot [ROBOT_HOME variable]/test3.robot 我将在环境级别定义ROBOT\u HOME变量: $ export ROBOT_HOME=/path/to/tests/ $ pybot -A arg
[ROBOT_HOME variable]/test1.robot
[ROBOT_HOME variable]/test2.robot
[ROBOT_HOME variable]/test3.robot
我将在环境级别定义ROBOT\u HOME
变量:
$ export ROBOT_HOME=/path/to/tests/
$ pybot -A args.robot
args.ROBOT文件中的[ROBOT\u HOME variable]
的以下替换均无效:
$ROBOT\u HOME
${ROBOT_HOME}
%{ROBOT_HOME}
pybot-A args.robot
pybot-v ROBOT\u HOME:$ROBOT\u HOME-A args.ROBOT
我想做的事情可能吗?@Rao为这个问题提供了一个很好的解决方案。本教程的最后一部分演示如何以编程方式生成argumentfile,并将其与一行程序一起使用
generate_arguments.sh | robot --argumentfile STDIN
generate_arguments.sh | robot --name Example --argumentfile STDIN tests.robot
现在剩下的问题是可以生成什么参数.sh
呢?我喜欢使用envsub替换脚本中的环境变量(对于linux env)
不确定是否有帮助,请看。@Rao是的,我看了那里,没有看到关于这种事情的任何东西。
envsubst '$HOME' < "argumentfile.txt" > "argumentfile.txt"
echo "argumentfile.txt"
generate_arguments.sh && robot --argumentfile "argumentfile.txt"