New

11 respostas
P

Bom pessoal,
como todo bom inicante to com uma dúvida,

pra que serve isso? hehe

Test timed = new Timed(loadTest, maxElapsedTime);

Muito obrigado e desculpem-me pela ignorancia! :wink:

11 Respostas

C

Oi,

não existe essas duas classes (Test e Timed) no javadoc, então acho que essas classes foram criadas.

Onde você viu elas?

P

Junit Perf. . . .

To tentando fazer alguns testes por ele, mas não encontro nehum tutorial! :cry:

to tentando na raça mesmo!!! hehehe
na real, queria saber o que faz o New???

e qual a logica do código? digamos, porqe tenho que citar o nome Tes Timed = new. . . .

Valeu…

C

A palavra reservada new serve para instanciar ou criar um objeto.

Test timed = new Timed(loadTest, maxElapsedTime);

Não posso afirmar com muita certeza o que este código faz, mas acredito que ele estipula um determinado tempo de algum objeto.

Se possível coloque algum código extra.

P

la vai !

package com.clarkware.junitperf;

import junit.framework.Test;
import junit.framework.TestSuite;
import junit.extensions.RepeatedTest;

public class LoadTest {

	public static final long toleranceInMillis = 100;

	public static Test suite() {
		TestSuite suite = new TestSuite();

		return suite;
	}
	protected static Test makeStateful10UserLoadTest() {

		int users = 10;
		int iterations = 1;

		Test factory = new TestFactory(ExampleStatefulTestCase.class);

		Test loadTest = new LoadTest(factory, users, iterations);

		return loadTest;
	}
	protected static Test makeStateful10UserLoadTestMethod() {

		int users = 10;
		int iterations = 1;

		Test factory = 
			new TestMethodFactory(ExampleStatefulTestCase.class, "testState");

		Test loadTest = new LoadTest(factory, users, iterations);

		return loadTest;
	}
	protected static Test make1SecondResponse1UserLoadTest() {

		int users = 1;
		long maxElapsedTimeInMillis = 1000 + toleranceInMillis;

		Test testCase = new ExampleTestCase("testOneSecondResponse");

		Test loadTest = new LoadTest(testCase, users);
		Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

		return timedTest;
	}
	protected static Test make1SecondResponse2UserLoadTest() {

		int users = 2;
		long maxElapsedTimeInMillis = 1500 + toleranceInMillis;

		Test testCase = new ExampleTestCase("testOneSecondResponse");

		Test loadTest = new LoadTest(testCase, users);
		Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

		return timedTest;
	}
	protected static Test make1SecondResponse1UserLoadIterationTest() {

		int users = 1;
		int iterations = 10;
		long maxElapsedTimeInMillis = 10000 + toleranceInMillis;

		Test testCase = new ExampleTestCase("testOneSecondResponse");

		Test loadTest = new LoadTest(testCase, users, iterations);
		Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

		return timedTest;
	}
	protected static Test make1SecondResponse1UserLoadRepeatedTest() {

		int users = 1;
		int iterations = 10;
		long maxElapsedTimeInMillis = 10000 + toleranceInMillis;

		Test testCase = new ExampleTestCase("testOneSecondResponse");

		Test repeatedTest = new RepeatedTest(testCase, iterations);
		Test loadTest = new LoadTest(repeatedTest, users);
		Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

		return timedTest;
	}
	protected static Test make1SecondResponse2UserLoad2SecondDelayTest() {

		int users = 2;
		Timer timer = new ConstantTimer(2000);
		long maxElapsedTimeInMillis = 4000 + toleranceInMillis;

		Test testCase = new ExampleTestCase("testOneSecondResponse");

		Test loadTest = new LoadTest(testCase, users, timer);
		Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

		return timedTest;
	}
 
	protected static Test 
	make1SecondResponse10UserLoad1SecondDelayIterationTest() {

		int users = 10;
		int iterations = 10;
		Timer timer = new ConstantTimer(1000);
		long maxElapsedTimeInMillis = 20000 + toleranceInMillis;

		Test testCase = new ExampleTestCase("testOneSecondResponse");

		Test loadTest = new LoadTest(testCase, users, iterations, timer);
		Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

		return timedTest;
	}

	public static void main(String args[]) {
		junit.textui.TestRunner.run(suite());
	}
}
C

Coloque o código dessa classe: TimedTest

P

Segue:

package com.clarkware.junitperf;

import junit.framework.*;

public class TimedTestTest extends TestCase {

	private Test _oneSecondTest;	
	private Test _oneSecondFailedTest;
	private Timer _twoSecondDelayTimer;
	
	public static final long tolerance = 100;
	 
	public TimedTestTest(String name) {
		super(name);
		
		_oneSecondTest = 
			new MockTest("testOneSecondExecutionTime");
		
		_oneSecondFailedTest = 
			new MockTest("testOneSecondExecutionTimeWithFailure");
						
		_twoSecondDelayTimer = new ConstantTimer(2000);
	}
	
	public void testOneSecondResponseDefault() {
	
		Test test = new TimedTest(_oneSecondTest, 1000 + tolerance);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(0, result.failureCount());
	}
	
	public void testOneSecondResponseNoWaitForCompletion() {
	
		Test test = new TimedTest(_oneSecondTest, 1000 + tolerance, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(0, result.failureCount());
	}

	public void testOneSecondResponseWaitForCompletion() {
	
		Test test = new TimedTest(_oneSecondTest, 1000 + tolerance, true);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(0, result.failureCount());
	}
	
	public void testOneSecondResponseFailure() {
		
		Test test = new TimedTest(_oneSecondTest, 900);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testOneSecondResponseOneUserLoadSuccess() {
		
		Test loadTest = new LoadTest(_oneSecondTest, 1);
		Test test = new TimedTest(loadTest, 1000 + tolerance);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(0, result.failureCount());
	}
	
	public void testOneSecondResponseOneUserLoadFailure() {
		
		Test loadTest = new LoadTest(_oneSecondTest, 1);
		Test test = new TimedTest(loadTest, 900);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testOneSecondResponseMultiUserLoadSuccess() {
		
		Test loadTest = new LoadTest(_oneSecondTest, 2);
		Test test = new TimedTest(loadTest, 1500);
		
		assertEquals(2, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(2, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(0, result.failureCount());
	}
	
	public void testOneSecondResponseMultiUserLoadFailure() {
		
		Test loadTest = new LoadTest(_oneSecondTest, 2);
		Test test = new TimedTest(loadTest, 1000);
		
		assertEquals(2, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(2, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testOneSecondResponseMultiUserLoadTwoSecondDelaySuccess() {
		
		Test loadTest = new LoadTest(_oneSecondTest, 2, _twoSecondDelayTimer);
		Test test = new TimedTest(loadTest, 4000 + tolerance);
		
		assertEquals(2, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(2, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(0, result.failureCount());
	}
	
	public void testOneSecondResponseMultiUserLoadTwoSecondDelayFailure() {
		
		Test loadTest = new LoadTest(_oneSecondTest, 2, _twoSecondDelayTimer);
		Test test = new TimedTest(loadTest, 3700 + tolerance);
		
		assertEquals(2, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(2, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testInfiniteNoWaitForCompletion() {
	
		Test mockTest = new MockTest("testInfiniteExecutionTime");
		Test test = new TimedTest(mockTest, 1000 + tolerance, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}

	public void testLongResponseNoWaitForCompletion() {
	
		Test mockTest = new MockTest("testLongExecutionTime");
		Test test = new TimedTest(mockTest, 2000 + tolerance, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testInfiniteWaitForCompletion() {
	
		Test mockTest = new MockTest("testInfiniteExecutionTime");
		Test test = new TimedTest(mockTest, 1000 + tolerance, true);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	
	public void testOneSecondResponseSuccessWaiting() {
		
		Test test = new TimedTest(_oneSecondFailedTest, 1000 + tolerance, true);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testOneSecondResponseSuccessNonWaiting() {
			
		Test test = new TimedTest(_oneSecondFailedTest, 1000 + tolerance, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}

	public void testOneSecondResponseFailureWaiting() {
		
		Test test = new TimedTest(_oneSecondFailedTest, 900, true);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(2, result.failureCount());
	}
	public void testOneSecondResponseNonWaitingWithAmbiguousFailure() {
			
		Test test = new TimedTest(_oneSecondFailedTest, 900, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		assertEquals(1, result.runCount());
		assertEquals(0, result.errorCount());
		assertEquals(1, result.failureCount());
	}
	
	public void testOneSecondResponseNonWaitingWithTimeFailure() {
			
		TimedTest test = 
			new TimedTest(_oneSecondFailedTest, 900, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
		
		if (test.outOfTime()) {
			// success
		} else {
			fail("Max elapsed time exceeded!");
		} 
	}
	
	public void testOneSecondResponseNonWaitingWithTestFailure() {	
	
		TimedTest test = 
			new TimedTest(_oneSecondFailedTest, 1100, false);
		
		assertEquals(1, test.countTestCases());
		
		TestResult result = new TestResult();
		test.run(result);
			
		if (test.outOfTime()) {
			fail("Should never get here!");
		} else {
			// 
			// Failed due to invalid test state.
			//
			assertEquals(1, result.runCount());
			assertEquals(0, result.errorCount());
			assertEquals(1, result.failureCount());
		}
	}
	
	public static Test suite() {
		return new TestSuite(TimedTestTest.class);
	}
	
	 public static void main(String args[]) {
		junit.textui.TestRunner.run(suite());
	}
}
C

Não, você colocou a classe TimedTestTest e eu quero ver a TimedTest onde se encontra esse construtor TimedTest(loadTest, maxElapsedTimeInMillis).

P

desculpe,

Mas não tem a classe que o Sr. pediu!
Apenas essa! :???:

C

Muito estranho, pois a classe que você está em dúvida é essa:

Test timedTest = new TimedTest(loadTest, maxElapsedTimeInMillis);

O nome dessa classe é TimeTest e tem um construtor que recebe dois parâmetros:

(loadTest, maxElapsedTimeInMillis);

E a classe que você me mostrou tem o nome TimedTestTest e só tem um construtor chamado TimedTestTest(String name).

:space:

S

“Psy_lost”:
Bom pessoal,
como todo bom inicante to com uma dúvida,

pra que serve isso? hehe

Test timed = new Timed(loadTest, maxElapsedTime);

Muito obrigado e desculpem-me pela ignorancia! :wink:

Primeiro que tudo: não faz sentido usar o JUnit sem saber java primeiro.

O codigo significa o seguinte: " Crie um novo objeto da classe Timed conforme os parametros loadTest e maxElapsedTime. Atributa esse objeto a uma variável chamada timed do tipo Test. "

O codigo significa tb, num nivel mais abstrato que Timed herda de Test em algum ponto da sua hirarquia. (caso contrario um erro irá acontecer)

P

Obrigado!!!
Entendi agora!! hehehe

Bom, quando se acha um emprego na área que vc quer e que pague sua faculdade, vc não liga muito se essas coisas fazem sentido ou não! :wink:

Valeu mesmo pela ajuda!!!

Criado 29 de janeiro de 2007
Ultima resposta 30 de jan. de 2007
Respostas 11
Participantes 3