Jmeter 函数_base64Encode不适用于随机变量

Jmeter 函数_base64Encode不适用于随机变量,jmeter,Jmeter,使用\uu base64Encode函数对随机变量进行编码时出现问题。 我使用随机变量为用户生成唯一的电子邮件。(在测试场景的每个迭代中) 我想使用: ${uuuu base64Encode(${randomvar}})生成编码的${randomvar} 下面定义的用户定义变量“babretr”的实例: babretr=${uuu base64Encode(${randomMail}${timeStamp}@jmeter.soi:Kazek2017@)} base64编码后的外观: babret

使用\uu base64Encode函数对随机变量进行编码时出现问题。 我使用随机变量为用户生成唯一的电子邮件。(在测试场景的每个迭代中)

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

下面定义的用户定义变量“babretr”的实例: babretr=${uuu base64Encode(${randomMail}${timeStamp}@jmeter.soi:Kazek2017@)}

base64编码后的外观:

babretr=JHtyYW5kb21NYWlsfTIwMTcwNTE5MDg0MTI0NDcyWkBqbWV0ZXIuc29pOkthemVrMjAxN0A=
${randomMail}20170519084124472Z@jmeter.soi:Kazek2017@
base64解码后查看:

babretr=JHtyYW5kb21NYWlsfTIwMTcwNTE5MDg0MTI0NDcyWkBqbWV0ZXIuc29pOkthemVrMjAxN0A=
${randomMail}20170519084124472Z@jmeter.soi:Kazek2017@
Jmeter随机变量${randomMail}未编码。
不同变量的问题不存在

您可以在采样器上添加Beanshell预处理器,并放置如下内容:

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);
之后,只需在采样器中使用
${encodedAddress}