本文整理了Java中org.apache.jmeter.threads.JMeterVariables
类的一些代码示例,展示了JMeterVariables
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JMeterVariables
类的具体详情如下:
包路径:org.apache.jmeter.threads.JMeterVariables
类名称:JMeterVariables
[英]Class which defines JMeter variables. These are similar to properties, but they are local to a single thread.
[中]类,该类定义JMeter变量。这些属性类似于属性,但它们是单个线程的本地属性。
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_components
private void saveOneMatch(JMeterVariables vars, String refName, List<String> matches) {
if (matches.size() == 1) { // if not then invalid matchNum was likely supplied
String match = matches.get(0);
if (match != null) {
vars.put(refName, match);
}
}
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
@Override
public Object getObject(String key) {
return variables.getObject(key);
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_components
buf.append("_g"); // $NON-NLS-1$
int pfxlen=buf.length();
String prevString=vars.get(buf.toString());
int previous=0;
if (prevString!=null){
for (int x = 0; x < groups; x++) {
buf.append(x);
vars.put(buf.toString(), match.group(x));
buf.setLength(pfxlen);
vars.put(buf.toString(), Integer.toString(groups-1));
for (int i = groups; i <= previous; i++){
buf.append(i);
vars.remove(buf.toString());// remove the remaining _gn vars
buf.setLength(pfxlen);
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_components
private void clearOldRefVars(JMeterVariables vars, String refName) {
vars.remove(refName + REF_MATCH_NR);
for (int i=1; vars.get(refName + "_" + i) != null; i++) {
vars.remove(refName + "_" + i);
}
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_jdbc
private void putIntoVar(final JMeterVariables jmvars, final String name,
final ResultSet resultSet) throws SQLException {
if (RS_STORE_AS_OBJECT.equals(resultSetHandler)) {
jmvars.putObject(name, resultSet);
} else if (RS_COUNT_RECORDS.equals(resultSetHandler)) {
jmvars.put(name, resultSet.toString() + " " + countRows(resultSet)
+ " rows");
} else {
jmvars.put(name, resultSet.toString());
}
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
/**
* Create variables for testPlan
* @param testPlan {@link JMeterVariables}
* @return {@link JMeterVariables}
*/
private JMeterVariables createVars(TestPlan testPlan) {
testPlan.prepareForPreCompile(); //A hack to make user-defined variables in the testplan element more dynamic
Map<String, String> args = testPlan.getUserDefinedVariables();
replacer.setUserDefinedVariables(args);
JMeterVariables vars = new JMeterVariables();
vars.putAll(args);
return vars;
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_jdbc
if(!currentResultVariable.isEmpty()) {
results = new ArrayList<>();
jmvars.putObject(currentResultVariable, results);
String name = varNames[i - 1].trim();
if (name.length()>0){ // Save the value in the variable if present
jmvars.put(name+UNDERSCORE+j, o == null ? null : o.toString());
final String varCount = name + "_#"; // $NON-NLS-1$
String prevCount = jmvars.get(varCount);
if (prevCount != null) {
int prev = Integer.parseInt(prevCount);
for (int n = j + 1; n <= prev; n++) {
jmvars.remove(name + UNDERSCORE + n);
jmvars.put(varCount, Integer.toString(j)); // save the current count
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
private void saveVars(JMeterVariables vars){
for(int i = 0; i < variableNames.length; i++){
values[i] = vars.get(variableNames[i]);
}
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_functions
/** {@inheritDoc} */
@Override
public String execute(SampleResult previousResult, Sampler currentSampler)
throws InvalidVariableException {
JMeterVariables vars = getVariables();
String stringToSplit = ((CompoundVariable) values[0]).execute();
String varNamePrefix = ((CompoundVariable) values[1]).execute().trim();
String splitString = ",";
if (values.length > 2) { // Split string provided
String newSplitString = ((CompoundVariable) values[2]).execute();
splitString = newSplitString.length() > 0 ? newSplitString : splitString;
}
if (log.isDebugEnabled()){
log.debug("Split "+stringToSplit+ " using "+ splitString+ " into "+varNamePrefix);
}
String[] parts = JOrphanUtils.split(stringToSplit, splitString, "?");// $NON-NLS-1$
vars.put(varNamePrefix, stringToSplit);
vars.put(varNamePrefix + "_n", Integer.toString(parts.length));// $NON-NLS-1$
for (int i = 1; i <= parts.length; i++) {
if (log.isDebugEnabled()){
log.debug(parts[i-1]);
}
vars.put(varNamePrefix + "_" + i, parts[i - 1]);// $NON-NLS-1$
}
vars.remove(varNamePrefix + "_" + (parts.length+1));
return stringToSplit;
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_functions
vars.put(name, defaultValue);
textToMatch=vars.get(inputVariable);
} else if (previousResult != null){
textToMatch = previousResult.getResponseDataAsString();
vars.put(name + "_matchNr", Integer.toString(collectAllMatches.size())); //$NON-NLS-1$
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_components
/**
* {@inheritDoc}
*/
@Override
public boolean isDone() {
if (loopCount >= getEndIndex()) {
return true;
}
JMeterContext context = getThreadContext();
StringBuilder builder = new StringBuilder(
getInputVal().length()+getSeparator().length()+3);
String inputVariable =
builder.append(getInputVal())
.append(getSeparator())
.append(Integer.toString(loopCount+1)).toString();
final JMeterVariables variables = context.getVariables();
final Object currentVariable = variables.getObject(inputVariable);
if (currentVariable != null) {
variables.putObject(getReturnVal(), currentVariable);
if (log.isDebugEnabled()) {
log.debug("{} : Found in vars:{}, isDone:{}",
getName(), inputVariable, Boolean.FALSE);
}
return false;
}
return super.isDone();
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_components
globalCounter = start;
variables.put(getVarName(), formatNumber(globalCounter));
globalCounter += increment;
long current = perTheadNumber.get().longValue();
if(isResetOnThreadGroupIteration()) {
int iteration = variables.getIteration();
Long lastIterationNumber = perTheadLastIterationNumber.get();
if(iteration != lastIterationNumber.longValue()) {
variables.put(getVarName(), formatNumber(current));
current += increment;
if (current > end) {
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
threadContext.setVariables(jMeterVariables);
threadContext.setThreadNum(1);
threadContext.getVariables().put(JMeterThread.LAST_SAMPLE_OK, "true");
ThreadGroup threadGroup = new ThreadGroup();
threadGroup.setName("FunctionHelper-Dialog-ThreadGroup");
jMeterVariables = new JMeterVariables();
variablesTextArea.setText(variablesToString(jMeterVariables));
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_http
/**
* Store in JMeter Variables the UserToken so that the SSL context is reused
* See <a href="https://bz.apache.org/bugzilla/show_bug.cgi?id=57804">Bug 57804</a>
* @param jMeterVariables {@link JMeterVariables}
* @param localContext {@link HttpContext}
*/
private void extractClientContextAfterSample(JMeterVariables jMeterVariables, HttpContext localContext) {
Object userToken = localContext.getAttribute(HttpClientContext.USER_TOKEN);
if(userToken != null) {
log.debug("Extracted from HttpContext user token:{} storing it as JMeter variable:{}", userToken, JMETER_VARIABLE_USER_TOKEN);
// During recording JMeterContextService.getContext().getVariables() is null
if (jMeterVariables != null) {
jMeterVariables.putObject(JMETER_VARIABLE_USER_TOKEN, userToken);
}
}
}
代码示例来源:origin: Blazemeter/jmeter-bzm-plugins
);
JMeterVariables variables = new JMeterVariables();
JMeterContextService.getContext().setVariables(variables);
while (true) {
config.iterationStart(null);
filePaths.add(variables.get(variableName));
代码示例来源:origin: BrightTag/kafkameter
/**
* Helper for testing outside of JMeter
*/
public static void main(String[] args) {
LoadGenerator generator = new LoadGenerator();
// Mock out JMeter environment
JMeterVariables variables = new JMeterVariables();
JMeterContextService.getContext().setVariables(variables);
generator.setFileName("config1.json");
generator.setVariableName("kafka_message");
generator.iterationStart(null);
for (Map.Entry<String, Object> entry : variables.entrySet()) {
System.out.println(entry.getKey() + " : " + entry.getValue());
}
}
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
@Override
public int getIteration() {
return variables.getIteration();
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
void notifyTestListeners() {
threadVars.incIteration();
for (TestIterationListener listener : testIterationStartListeners) {
listener.testIterationStart(new LoopIterationEvent(threadGroupLoopController, threadVars.getIteration()));
if (listener instanceof TestElement) {
((TestElement) listener).recoverRunningVersion();
}
}
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_core
public JMeterThread(HashTree test, JMeterThreadMonitor monitor, ListenerNotifier note) {
this.monitor = monitor;
threadVars = new JMeterVariables();
testTree = test;
compiler = new TestCompiler(testTree);
threadGroupLoopController = (Controller) testTree.getArray()[0];
SearchByClass<TestIterationListener> threadListenerSearcher = new SearchByClass<>(TestIterationListener.class); // TL - IS
test.traverse(threadListenerSearcher);
testIterationStartListeners = threadListenerSearcher.getSearchResults();
SearchByClass<SampleMonitor> sampleMonitorSearcher = new SearchByClass<>(SampleMonitor.class);
test.traverse(sampleMonitorSearcher);
sampleMonitors = sampleMonitorSearcher.getSearchResults();
notifier = note;
running = true;
}
代码示例来源:origin: org.apache.jmeter/ApacheJMeter_jdbc
private void putIntoVar(final JMeterVariables jmvars, final String name,
final Blob blob) throws SQLException {
if (RS_STORE_AS_OBJECT.equals(resultSetHandler)) {
try {
long length = Math.max(blob.length(), MAX_RETAIN_SIZE);
jmvars.putObject(name,
IOUtils.toByteArray(blob.getBinaryStream(0, length)));
} catch (IOException e) {
log.warn("Could not read BLOB into {} as object.", name, e);
}
} else if (RS_COUNT_RECORDS.equals(resultSetHandler)) {
jmvars.put(name, blob.length() + " bytes");
} else {
try {
long length = Math.max(blob.length(), MAX_RETAIN_SIZE);
try (InputStream is = blob.getBinaryStream(0, length)) {
jmvars.put(name, IOUtils.toString(is, ENCODING));
}
} catch (IOException e) {
log.warn("Can't convert BLOB to String using {}", ENCODING, e);
}
}
}
内容来源于网络,如有侵权,请联系作者删除!