函数__base64Encode不适用于随机变量

时间:2017-05-19 07:42:33

标签: jmeter

使用 __ base64Encode 函数编码随机变量的问题。 我使用随机变量为用户生成唯一的电子邮件。 (在测试场景的每次迭代中)

我想用: $ {__ base64Encode($ {randomvar})}生成编码的$ {randomvar}

真实示例用户定义变量' babretr'定义如下: babretr = $ {__ base64Encode($ {randomMail} $ {的timeStamp} @ jmeter.soi:Kazek2017 @)}

<64>在base64 编码之后:

babretr=JHtyYW5kb21NYWlsfTIwMTcwNTE5MDg0MTI0NDcyWkBqbWV0ZXIuc29pOkthemVrMjAxN0A=
在base64 解码之后

${randomMail}20170519084124472Z@jmeter.soi:Kazek2017@

Jmeter随机变量$ {randomMail}未编码。 不同的变量问题不存在。

1 个答案:

答案 0 :(得分:0)

您可以在您的采样器上添加Beanshell PreProcessor,并输入如下内容:

data Tree a = Leaf a | Branch (Tree a) (Tree a)

之后,只需在您的采样器中使用import java.util.Base64; import org.apache.commons.lang3.RandomStringUtils; String sufix = "@jmeter.soi:Kazek2017@"; String address = Base64.getEncoder().encodeToString(new String( RandomStringUtils.random(10) + vars.get("timeStamp") + sufix).getBytes()); vars.put("encodedAddress", address);