• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java JMeterVariables类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.jmeter.threads.JMeterVariables的典型用法代码示例。如果您正苦于以下问题:Java JMeterVariables类的具体用法?Java JMeterVariables怎么用?Java JMeterVariables使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



JMeterVariables类属于org.apache.jmeter.threads包,在下文中一共展示了JMeterVariables类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: testBug54467

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
public void testBug54467() throws Exception {
    JMeterContext jmctx = JMeterContextService.getContext();
    LoopController loop = new LoopController();
    Map<String, String> variables = new HashMap<String, String>();
    ReplaceStringWithFunctions transformer = new ReplaceStringWithFunctions(new CompoundVariable(), variables);
    jmctx.setVariables(new JMeterVariables());

    StringProperty prop = new StringProperty(LoopController.LOOPS,"${__Random(1,12,)}");
    JMeterProperty newProp = transformer.transformValue(prop);
    newProp.setRunningVersion(true);
    
    loop.setProperty(newProp);
    loop.addTestElement(new TestSampler("random run"));
    loop.setRunningVersion(true);
    loop.initialize();
    int loops = loop.getLoops();
    for (int i = 0; i < loops; i++) {
        Sampler s = loop.next();
        assertNotNull(s);
    }
    assertNull(loop.next());    
}
 
开发者ID:botelhojp,项目名称:apache-jmeter-2.10,代码行数:23,代码来源:TestLoopController.java


示例2: send

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Override
public void send(JMeterContext context, SampleResult result) {
    JMeterVariables variables = context.getVariables();
    ConcurrentHashMap<String, MockLwM2mClient> clients = (ConcurrentHashMap<String, MockLwM2mClient>) variables.getObject("lwm2mClients");
    MockLwM2mClient client = clients.get(endpoint);
    if (client != null) {
        SimpleResource resource = (SimpleResource) client.getObject(objectId).getChild(instanceId).getChild(resourceId);
        result.sampleStart();
        if (resource != null) {
            resource.setResourceValue(Float.toString(rng.nextInt(100)));
            result.setSuccessful(true);
            log.debug("Sent observation for " + objectId + "/" + instanceId + "/" + resourceId);
        } else {
            result.setSuccessful(false);
            log.debug("Could not send observation for " + objectId + "/" + instanceId + "/" + resourceId);
        }
        result.sampleEnd();
    }
}
 
开发者ID:vears91,项目名称:lwm2m-jmeter,代码行数:20,代码来源:NotifyObserversSampler.java


示例3: iterationStart

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {
    boolean isIndependentListPerThread = getIndependentListPerThread();

    if (!isIndependentListPerThread && directoryListingIterator == null) {
        throw new JMeterStopThreadException("All files in the directory have been passed.");
    }

    if (getIterator().hasNext()) {
        JMeterVariables variables = JMeterContextService.getContext().getVariables();
        variables.put(
                getStringOrDefault(getDestinationVariableName(), DEFAULT_DESTINATION_VARIABLE_NAME),
                getFilePath(getIterator().next())
        );
    } else {
        // TODO: interrupt iteration
        directoryListingIterator = null;
        throw new JMeterStopThreadException("All files in the directory have been passed.");
    }
}
 
开发者ID:Blazemeter,项目名称:jmeter-bzm-plugins,代码行数:21,代码来源:DirectoryListingConfig.java


示例4: changeVariablesMap

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
private void changeVariablesMap() {
    try {
        JMeterContext context = this.getThreadContext();
        if (context != null && context.getVariables() != null) {
            JMeterVariables jMeterVariables = context.getVariables();
            Class<JMeterVariables> cls = JMeterVariables.class;
            Field variablesField = cls.getDeclaredField("variables");
            variablesField.setAccessible(true);
            Object obj = variablesField.get(jMeterVariables);
            synchronized (obj) {
                if (obj instanceof Map) {
                    Map variables = (Map) obj;
                    if (!(variables instanceof ConcurrentHashMap)) {
                        variablesField.set(jMeterVariables, new ConcurrentHashMap(variables));
                    }
                } else {
                    log.warn("Unexpected variables map type " + obj.getClass().getName());
                }
            }
        }
    } catch (Throwable ex) {
        log.warn("Cannot change variables map ", ex);
    }
}
 
开发者ID:Blazemeter,项目名称:jmeter-bzm-plugins,代码行数:25,代码来源:ParallelSampler.java


示例5: readRandom

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
private void readRandom() {
    final RandomCSVReader reader = getReader();
    long lineAddr;
    synchronized (reader) {
        if (reader.hasNextRecord()) {
            lineAddr = reader.getNextLineAddr();
        } else {
            // TODO: interrupt iteration
            randomCSVReader = null;
            throw new JMeterStopThreadException("All records in the CSV file have been passed.");
        }
    }

    JMeterVariables variables = JMeterContextService.getContext().getVariables();
    putVariables(variables, getDestinationVariableKeys(), reader.readLineWithSeek(lineAddr));
}
 
开发者ID:Blazemeter,项目名称:jmeter-bzm-plugins,代码行数:17,代码来源:RandomCSVDataSetConfig.java


示例6: testPutVariables1

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Test
public void testPutVariables1() throws Exception {
    String path = this.getClass().getResource("/SpaceDelimiter.csv").getPath();

    JMeterVariables jMeterVariables = new JMeterVariables();
    JMeterContextService.getContext().setVariables(jMeterVariables);

    RandomCSVDataSetConfig config = new RandomCSVDataSetConfig();

    config.setFilename(path);
    config.setFileEncoding("UTF-8");
    config.setDelimiter(" ");
    config.setVariableNames("column1,column2");
    config.setRandomOrder(false);
    config.setRewindOnTheEndOfList(false);
    config.setIndependentListPerThread(false);
    config.setIgnoreFirstLine(true);

    config.testStarted();

    config.iterationStart(null);
    assertEquals(2, jMeterVariables.entrySet().size());
    assertEquals("1", jMeterVariables.get("column1"));
    assertEquals("2", jMeterVariables.get("column2"));
}
 
开发者ID:Blazemeter,项目名称:jmeter-bzm-plugins,代码行数:26,代码来源:RandomCSVDataSetConfigTest.java


示例7: testPutVariables2

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Test
public void testPutVariables2() throws Exception {
    String path = this.getClass().getResource("/SpaceDelimiter.csv").getPath();

    JMeterVariables jMeterVariables = new JMeterVariables();
    JMeterContextService.getContext().setVariables(jMeterVariables);

    RandomCSVDataSetConfig config = new RandomCSVDataSetConfig();

    config.setFilename(path);
    config.setFileEncoding("UTF-8");
    config.setDelimiter(" ");
    config.setVariableNames("column1,column2,column3,column4");
    config.setRandomOrder(false);
    config.setRewindOnTheEndOfList(false);
    config.setIndependentListPerThread(false);
    config.setIgnoreFirstLine(true);

    config.testStarted();

    config.iterationStart(null);
    assertEquals(3, jMeterVariables.entrySet().size());
    assertEquals("1", jMeterVariables.get("column1"));
    assertEquals("2", jMeterVariables.get("column2"));
    assertEquals("3", jMeterVariables.get("column3"));
}
 
开发者ID:Blazemeter,项目名称:jmeter-bzm-plugins,代码行数:27,代码来源:RandomCSVDataSetConfigTest.java


示例8: testPutVariables3

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Test
public void testPutVariables3() throws Exception {
    String path = this.getClass().getResource("/SpaceDelimiter.csv").getPath();

    JMeterVariables jMeterVariables = new JMeterVariables();
    JMeterContextService.getContext().setVariables(jMeterVariables);

    RandomCSVDataSetConfig config = new RandomCSVDataSetConfig();

    config.setFilename(path);
    config.setFileEncoding("UTF-8");
    config.setDelimiter(" ");
    config.setVariableNames("column1,column2,column3,column4");
    config.setRandomOrder(false);
    config.setRewindOnTheEndOfList(false);
    config.setIndependentListPerThread(false);
    config.setIgnoreFirstLine(true);

    config.testStarted();

    config.iterationStart(null);
    assertEquals(3, jMeterVariables.entrySet().size());
    assertEquals("1", jMeterVariables.get("column1"));
    assertEquals("2", jMeterVariables.get("column2"));
    assertEquals("3", jMeterVariables.get("column3"));
}
 
开发者ID:Blazemeter,项目名称:jmeter-bzm-plugins,代码行数:27,代码来源:RandomCSVDataSetConfigTest.java


示例9: iterationStart

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/**
 * For every JMeter sample, iterationStart method gets invoked, it initializes load generator and for each iteration sets new message as JMeter variable
 *
 * @param loopIterationEvent
 */
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {

    //Check if load generator is instantiated
    if (generator == null) {

        try {

            //instantiate plaintext load generator
            generator = new PlaintTextLoadGenerator(getJsonSchema());

        } catch (Exception e) {
            log.error("Failed to create PlaintTextLoadGenerator instance", e);
        }

    }

    //For ever iteration put message in jmeter variables
    JMeterVariables variables = JMeterContextService.getContext().getVariables();
    variables.putObject(placeHolder, generator.nextMessage());
}
 
开发者ID:GSLabDev,项目名称:pepper-box,代码行数:27,代码来源:PlainTextConfigElement.java


示例10: iterationStart

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/**
 * For every JMeter sample, iterationStart method gets invoked, it initializes load generator and for each iteration sets new message as JMeter variable
 *
 * @param loopIterationEvent
 */
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {

    try {
        //Check if load generator is instantiated
        if (generator == null) {

            //instantiate serialized load generator
            generator = new SerializedLoadGenerator(className, objProperties);

        }

        //For ever iteration put message in jmeter variables
        JMeterVariables variables = JMeterContextService.getContext().getVariables();
        variables.putObject(placeHolder, generator.nextMessage());
    } catch (Exception e) {
        log.error("Failed to create PlaintTextLoadGenerator instance", e);
    }
}
 
开发者ID:GSLabDev,项目名称:pepper-box,代码行数:25,代码来源:SerializedConfigElement.java


示例11: setup

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Before
public void setup() throws IOException {

    zkServer = new EmbeddedZookeeper();

    String zkConnect = ZKHOST + ":" + zkServer.port();
    zkClient = new ZkClient(zkConnect, 30000, 30000, ZKStringSerializer$.MODULE$);
    ZkUtils zkUtils = ZkUtils.apply(zkClient, false);

    Properties brokerProps = new Properties();
    brokerProps.setProperty("zookeeper.connect", zkConnect);
    brokerProps.setProperty("broker.id", "0");
    brokerProps.setProperty("log.dirs", Files.createTempDirectory("kafka-").toAbsolutePath().toString());
    brokerProps.setProperty("listeners", "PLAINTEXT://" + BROKERHOST +":" + BROKERPORT);
    KafkaConfig config = new KafkaConfig(brokerProps);
    Time mock = new MockTime();
    kafkaServer = TestUtils.createServer(config, mock);
    //AdminUtils.createTopic(zkUtils, TOPIC, 1, 1, new Properties(), RackAwareMode.Disabled$.MODULE$);

    JMeterContext jmcx = JMeterContextService.getContext();
    jmcx.setVariables(new JMeterVariables());

}
 
开发者ID:GSLabDev,项目名称:pepper-box,代码行数:24,代码来源:PepperBoxSamplerTest.java


示例12: iterationStart

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
@Override
public void iterationStart(LoopIterationEvent event) {
	TestElement source = event.getSource();
	JMeterContext threadContext = source.getThreadContext();
	JMeterVariables variables = threadContext.getVariables();
	iterationStart(variables);
}
 
开发者ID:qas-guru,项目名称:martini-jmeter-extension,代码行数:8,代码来源:SpringPreProcessor.java


示例13: getApplicationContext

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
public static ApplicationContext getApplicationContext() {
	JMeterContext context = JMeterContextService.getContext();
	JMeterVariables variables = context.getVariables();
	Object o = variables.getObject(VARIABLE);
	checkNotNull(o, "variable %s not found", VARIABLE);
	return ApplicationContext.class.cast(o);
}
 
开发者ID:qas-guru,项目名称:martini-jmeter-extension,代码行数:8,代码来源:SpringPreProcessor.java


示例14: isDone

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/**
 * {@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("ForEach resultstring isDone=" + variables.get(getReturnVal()));
        }
        return false;
    }
    return super.isDone();
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:27,代码来源:ForeachController.java


示例15: endOfLoop

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
private boolean endOfLoop(boolean loopEnd) {
    String cnd = getCondition().trim();
    if(log.isDebugEnabled()) {
        log.debug("Condition string:" + cnd+".");
    }
    boolean res;
    // If blank, only check previous sample when at end of loop
    if ((loopEnd && cnd.length() == 0) || "LAST".equalsIgnoreCase(cnd)) {// $NON-NLS-1$
        JMeterVariables threadVars = JMeterContextService.getContext().getVariables();
        res = "false".equalsIgnoreCase(threadVars.get(JMeterThread.LAST_SAMPLE_OK));// $NON-NLS-1$
    } else {
        // cnd may be null if next() called us
        res = "false".equalsIgnoreCase(cnd);// $NON-NLS-1$
    }
    if(log.isDebugEnabled()) {
        log.debug("Condition value: " + res);
    }
    return res;
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:20,代码来源:WhileController.java


示例16: removeGroups

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/**
 * Removes the variables:<br/>
 * basename_gn, where n=0...# of groups<br/>
 * basename_g = number of groups (apart from g0)
 */
private void removeGroups(JMeterVariables vars, String basename) {
    StringBuilder buf = new StringBuilder();
    buf.append(basename);
    buf.append("_g"); // $NON-NLS-1$
    int pfxlen=buf.length();
    // How many groups are there?
    int groups;
    try {
        groups=Integer.parseInt(vars.get(buf.toString()));
    } catch (NumberFormatException e) {
        groups=0;
    }
    vars.remove(buf.toString());// Remove the group count
    for (int i = 0; i <= groups; i++) {
        buf.append(i);
        vars.remove(buf.toString());// remove the g0,g1...gn vars
        buf.setLength(pfxlen);
    }
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:25,代码来源:RegexExtractor.java


示例17: iterationStart

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public void iterationStart(LoopIterationEvent iterEvent) {
    Random randGen=null;
    if (getPerThread()){
        randGen = perThreadRandom.get();
    } else {
        synchronized(this){
            if (globalRandom == null){
                init();
                globalRandom = new Random(getRandomSeedAsLong());
            }
            randGen=globalRandom;
        }
    }
    if (n <=0){
        return;
    }
   long nextRand = minimum + randGen.nextInt(n);
   // Cannot use getThreadContext() as we are not cloned per thread
   JMeterVariables variables = JMeterContextService.getContext().getVariables();
   variables.put(getVariableName(), formatNumber(nextRand));
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:24,代码来源:RandomVariableConfig.java


示例18: setValues

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
private void setValues() {
    synchronized (lock) {
        if (log.isDebugEnabled()) {
            log.debug(Thread.currentThread().getName() + " Running up named: " + getName());//$NON-NLS-1$
        }
        PropertyIterator namesIter = getNames().iterator();
        PropertyIterator valueIter = getValues().iterator();
        JMeterVariables jmvars = getThreadContext().getVariables();
        while (namesIter.hasNext() && valueIter.hasNext()) {
            String name = namesIter.next().getStringValue();
            String value = valueIter.next().getStringValue();
            if (log.isDebugEnabled()) {
                log.debug(Thread.currentThread().getName() + " saving variable: " + name + "=" + value);//$NON-NLS-1$
            }
            jmvars.put(name, value);
        }
    }
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:19,代码来源:UserParameters.java


示例19: notifyListeners

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/**
 * Create additional SampleEvent in NON Parent Mode
 */
protected void notifyListeners() {
    // TODO could these be done earlier (or just once?)
    JMeterContext threadContext = getThreadContext();
    JMeterVariables threadVars = threadContext.getVariables();
    SamplePackage pack = (SamplePackage) threadVars.getObject(JMeterThread.PACKAGE_OBJECT);
    if (pack == null) {
        // If child of TransactionController is a ThroughputController and TPC does
        // not sample its children, then we will have this
        // TODO Should this be at warn level ?
        log.warn("Could not fetch SamplePackage");
    } else {
        SampleEvent event = new SampleEvent(res, threadContext.getThreadGroup().getName(),threadVars, true);
        // We must set res to null now, before sending the event for the transaction,
        // so that we can ignore that event in our sampleOccured method
        res = null;
        lnf.notifyListeners(event, pack.getSampleListeners());
    }
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:22,代码来源:TransactionController.java


示例20: toString

import org.apache.jmeter.threads.JMeterVariables; //导入依赖的package包/类
/**
 * @see org.apache.jmeter.functions.Function#execute
 */
@Override
public String toString() {
    String ret = null;
    JMeterVariables vars = getVariables();

    if (vars != null) {
        ret = vars.get(name);
    }

    if (ret == null) {
        return "${" + name + "}";
    }

    return ret;
}
 
开发者ID:johrstrom,项目名称:cloud-meter,代码行数:19,代码来源:SimpleVariable.java



注:本文中的org.apache.jmeter.threads.JMeterVariables类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java NetHandlerLoginClient类代码示例发布时间:2022-05-22
下一篇:
Java CodeSetsComponentImpl类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap