有没有办法在字典键中生成随机字符串?

Is there a way to generate a random string inside a dictionary key?

我有一个使用生成随机字符串关键字生成多个随机数据的关键字,目前我正在创建变量来存储生成的随机字符串。

我的做法是这样的

Generate Random Form Data
    ${variable1}         Generate Random String    8             [Letters]
    ${variable2}         Generate Random String    8             [Letters]
    ${variable3}         Generate Random String    8             [Letters]

有没有办法在字典中生成这个字符串,就像这样?

Generate Random Form Data
    ${variable}          Create Dictionary
    Set To Dictionary    ${variable}               first_name    Generate Random String    8    [Letters]

尝试像上面的示例那样生成一个包含两个键的字典:firstname 和 8,而我想要的只是创建一个包含单个键和随机字符串的字典。

简而言之——不行,不能这样; Set To Dictionary 获取您传递的任何内容并将其直接设置为值。
Robot Framework 中的(几乎)所有关键字都是一样的 - 您不能提供另一个关键字作为参数,其返回值将用作调用者的参数。

虽然在这种情况下,通过进行尽可能多的随机值生成迭代并将其添加到字典中,这很容易解决 - 例如使用 for 循环:

${variable}=    Create Dictionary
FOR    ${i}    IN RANGE    10    # how many random string you need
    ${value}         Generate Random String    8
    Set To Dictionary    ${variable}     first_name_${i}    ${value}
END

你可以把它放在一个关键字中,并传递你需要的 key:value 对的数量。