Robot Framework 从测试套件元数据访问关键字
Robot Framework accessing a keyword from test suite Metadata
我想为测试套件中的每个测试设置一个简单的计算机名称报告,
所以我创建了以下简单的机器人 __init__.robot
文件:
*** Settings ***
Metadata Executed At Get Environment Variable COMPUTERNAME
Library OperatingSystem
问题是 Get Environment Variable
被翻译成字符串,而不是用参数 COMPUTERNAME
调用关键字 Get Environment Variable
输入的日志是:
Executed At: Get Environment Variable COMPUTERNAME
问题:
如何从设置中调用某些关键字 Metadata
?
如果您问的是如何在 Metadata
设置中调用关键字,答案是不能。但是,您可以 做的是调用设置元数据的关键字。但是,在 Metadata
设置中,您只能定义字符串。
通过关键字设置元数据有两个步骤:首先,调用关键字并保存 return 值,然后调用 Set Suite Metadata 关键字。您可以通过创建自定义关键字在套件设置中执行此操作:
*** Settings ***
Suite setup Initialize Metadata
*** Keywords ***
Initialize Metadata
${data}= Get environment variable COMPUTERNAME
Set suite metadata Executed At ${data}
如果您的真正问题只是您想根据环境变量设置元数据,请使用 environment variable syntax:
*** Settings ***
Metadata %{COMPUTERNAME}
我想为测试套件中的每个测试设置一个简单的计算机名称报告,
所以我创建了以下简单的机器人 __init__.robot
文件:
*** Settings ***
Metadata Executed At Get Environment Variable COMPUTERNAME
Library OperatingSystem
问题是 Get Environment Variable
被翻译成字符串,而不是用参数 COMPUTERNAME
Get Environment Variable
输入的日志是:
Executed At: Get Environment Variable COMPUTERNAME
问题:
如何从设置中调用某些关键字 Metadata
?
如果您问的是如何在 Metadata
设置中调用关键字,答案是不能。但是,您可以 做的是调用设置元数据的关键字。但是,在 Metadata
设置中,您只能定义字符串。
通过关键字设置元数据有两个步骤:首先,调用关键字并保存 return 值,然后调用 Set Suite Metadata 关键字。您可以通过创建自定义关键字在套件设置中执行此操作:
*** Settings ***
Suite setup Initialize Metadata
*** Keywords ***
Initialize Metadata
${data}= Get environment variable COMPUTERNAME
Set suite metadata Executed At ${data}
如果您的真正问题只是您想根据环境变量设置元数据,请使用 environment variable syntax:
*** Settings ***
Metadata %{COMPUTERNAME}