Search in sources :

Example 1 with JMeterThread

use of org.apache.jmeter.threads.JMeterThread in project jmeter by apache.

the class TestTransactionController method testIssue57958.

/**
     * @see "http://bz.apache.org/bugzilla/show_bug.cgi?id=57958"
     */
@Test
public void testIssue57958() throws Exception {
    JMeterContextService.getContext().setVariables(new JMeterVariables());
    TestSampleListener listener = new TestSampleListener();
    TransactionController transactionController = new TransactionController();
    transactionController.setGenerateParentSample(true);
    ResponseAssertion assertion = new ResponseAssertion();
    assertion.setTestFieldResponseCode();
    assertion.setToEqualsType();
    assertion.addTestString("201");
    DebugSampler debugSampler = new DebugSampler();
    debugSampler.addTestElement(assertion);
    LoopController loop = new LoopController();
    loop.setLoops(1);
    loop.setContinueForever(false);
    ListedHashTree hashTree = new ListedHashTree();
    hashTree.add(loop);
    hashTree.add(loop, transactionController);
    hashTree.add(transactionController, debugSampler);
    hashTree.add(transactionController, listener);
    hashTree.add(debugSampler, assertion);
    TestCompiler compiler = new TestCompiler(hashTree);
    hashTree.traverse(compiler);
    ThreadGroup threadGroup = new ThreadGroup();
    threadGroup.setNumThreads(1);
    ListenerNotifier notifier = new ListenerNotifier();
    JMeterThread thread = new JMeterThread(hashTree, threadGroup, notifier);
    thread.setThreadGroup(threadGroup);
    thread.setOnErrorStopThread(true);
    thread.run();
    assertEquals("Must one transaction samples with parent debug sample", 1, listener.events.size());
    assertEquals("Number of samples in transaction : 1, number of failing samples : 1", listener.events.get(0).getResult().getResponseMessage());
}
Also used : JMeterVariables(org.apache.jmeter.threads.JMeterVariables) ListedHashTree(org.apache.jorphan.collections.ListedHashTree) ResponseAssertion(org.apache.jmeter.assertions.ResponseAssertion) DebugSampler(org.apache.jmeter.sampler.DebugSampler) TestCompiler(org.apache.jmeter.threads.TestCompiler) ThreadGroup(org.apache.jmeter.threads.ThreadGroup) JMeterThread(org.apache.jmeter.threads.JMeterThread) ListenerNotifier(org.apache.jmeter.threads.ListenerNotifier) Test(org.junit.Test)

Example 2 with JMeterThread

use of org.apache.jmeter.threads.JMeterThread in project jmeter by apache.

the class TimerService method adjustDelay.

/**
     * Adjust delay so that initialDelay does not exceed end of test
     * @param initialDelay initial delay in millis
     * @return initialDelay or adjusted delay
     */
public long adjustDelay(final long initialDelay) {
    JMeterThread thread = JMeterContextService.getContext().getThread();
    long endTime = thread != null ? thread.getEndTime() : 0;
    return adjustDelay(initialDelay, endTime);
}
Also used : JMeterThread(org.apache.jmeter.threads.JMeterThread)

Aggregations

JMeterThread (org.apache.jmeter.threads.JMeterThread)2 ResponseAssertion (org.apache.jmeter.assertions.ResponseAssertion)1 DebugSampler (org.apache.jmeter.sampler.DebugSampler)1 JMeterVariables (org.apache.jmeter.threads.JMeterVariables)1 ListenerNotifier (org.apache.jmeter.threads.ListenerNotifier)1 TestCompiler (org.apache.jmeter.threads.TestCompiler)1 ThreadGroup (org.apache.jmeter.threads.ThreadGroup)1 ListedHashTree (org.apache.jorphan.collections.ListedHashTree)1 Test (org.junit.Test)1