• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

blueomega

Medir desempenho em java e teste units

2 mensagens neste tópico

Ha uns tempos durante a execução de 1 trabalho em java o professor no eclipse meteu pra la uns parametros e começou a aparecer info do processador gasto, como percentagem que disponibilizada por operação, n.º de ciclos necessarios, etc

alem sabe como que parametros seriam e em que sitio?

tenho esta classe de teste

package teste;

import grafos.CSVFileParser;

import grafos.Grafo;

import grafos.Record;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.io.IOException;

import junit.framework.TestCase;

public class TestCaminho extends TestCase {

private void correTeste(final File testfile, final File fileSolucao,

final String posinicial, final String posfinal) throws IOException {

BufferedReader bufferSolucao = new BufferedReader(new FileReader(

fileSolucao));

Grafo grafo = new Grafo();

Record[] myRecord = CSVFileParser.parseCVS(testfile);

grafo.criaCaminho(myRecord);

assertEquals(bufferSolucao.readLine(), grafo.printCaminhoString(grafo

.dijkstra(posinicial, posfinal, false).getDestino()));

}

public void testeA() {

try {

File testfile = new File("teste\\TesteA\\file.csv");

File fileSolucao = new File("teste\\TesteA\\sol.txt");

correTeste(testfile, fileSolucao, "3", "5");

} catch (final Exception e) {

fail();

}

}

public void testeB() {

try {

File testfile = new File("teste\\TesteB\\file.csv");

File fileSolucao = new File("teste\\TesteB\\sol.txt");

correTeste(testfile, fileSolucao, "1", "5");

} catch (final Exception e) {

fail();

}

}

public void testeC() {

try {

File testfile = new File("teste\\TesteC\\file.csv");

File fileSolucao = new File("teste\\TesteC\\sol.txt");

correTeste(testfile, fileSolucao, "3", "4");

} catch (final Exception e) {

fail();

}

}

}

so que os testes não funcionam, estes são os erros, do 1.º teste

junit.framework.ComparisonFailure: null expected:<[3 a 2 a 1 c 4 c 5]> but was:<[]>

at junit.framework.Assert.assertEquals(Assert.java:81)

at junit.framework.Assert.assertEquals(Assert.java:87)

at teste.TestCaminho.correTeste(TestCaminho.java:24)

at teste.TestCaminho.testeA(TestCaminho.java:32)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at junit.framework.TestCase.runTest(TestCase.java:168)

at junit.framework.TestCase.runBare(TestCase.java:134)

at junit.framework.TestResult$1.protect(TestResult.java:110)

at junit.framework.TestResult.runProtected(TestResult.java:128)

at junit.framework.TestResult.run(TestResult.java:113)

at junit.framework.TestCase.run(TestCase.java:124)

at junit.framework.TestSuite.runTest(TestSuite.java:232)

at junit.framework.TestSuite.run(TestSuite.java:227)

at org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:76)

at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:38)

at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)

at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

a 2.º função passada ao assertEquals() funciona, ja que a uso em outros sitios e devolve 1 string, a função é recursiva e produz a string com a ajuda de uma função auxilizar por concatenação. os proprios resultados obtidos e guardados no ficheiro de teste foram obtidos a partir da mesma

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora