机械手框架:参数化的GUI元素

时间:2018-09-27 14:59:36

标签: automated-tests robotframework katalon-studio

Katalon中的

是一种非常好的方法,用于参数化GUI元素的选择器,以便您可以使用help参数轻松选择非常相似的元素。我想在Robot Framework中做类似的事情。

编辑:更好的例子,这更容易理解:

我们有几个GUI元素,在测试时必须与之交互。由于元素的选择器非常相似,因此我们希望对元素的特定部分进行参数化。在这种情况下,我们要参数化选择器的$(selector)部分:

*** Variables ***
$(overview.element}    //div[contains(@class, $(selector)')]

我们希望能够做到这一点,这样我们就可以避免类似的事情

*** Variables ***
$(overview.home}    //div[contains(@class, home')]
$(overview.settings}    //div[contains(@class, settings')]
$(overview.overview}    //div[contains(@class, overview')]

我们想在测试用例中给出该参数。意思是:我们可以指定我们要选择的元素。像这样:

    [Arguments]   ${selector}
Click    $(overview.element)(${selector})

有可能吗?如果可以,怎么办?

1 个答案:

答案 0 :(得分:0)

在使用定位器之前,可以使用内置关键字Replace variables进行替换。为此,您必须在定义${overview.element}

时转义变量引用

示例:

*** Variables ***
${overview.element}    //div[contains(@class, \${selector}')]

*** Keywords ***
Example keyword
    [Arguments]  ${selector}
    ${locator}=  Replace variables  ${overview.element}
    log  locator is ${locator}

*** Test cases ***
Example
    example keyword  settings

运行上述命令时,日志应显示以下内容:

enter image description here