2011-03-03 21 views
5

Estoy tratando de ejecutar la prueba GWT desde Eclipse 3.6, pero me he atascado con este extraño error.GWT caso de prueba no se puede ejecutar: JUnitFatalLaunchException

La clase de prueba 'com.company.demo.smartgwt.RequestBuilderTest' no se encontró en el módulo 'com.company.demo.smartgwt.module'; no se ha visto ninguna unidad de compilación para ese tipo

He intentado agregar la carpeta de origen en Ejecutar Diálogo -> classpath y pestañas de origen como se menciona here. Todavía no hay suerte y se están quedando sin opciones. ¿Alguna sugerencia gente?

pila de errores completo:


com.google.gwt.junit.JUnitFatalLaunchException: The test class 'com.company.demo.smartgwt.RequestBuilderTest' was not found in module 'com.company.demo.smartgwt.module'; no compilation unit for that type was seen 
    at com.google.gwt.junit.JUnitShell.checkTestClassInCurrentModule(JUnitShell.java:718) 
    at com.google.gwt.junit.JUnitShell.runTestImpl(JUnitShell.java:1317) 
    at com.google.gwt.junit.JUnitShell.runTestImpl(JUnitShell.java:1280) 
    at com.google.gwt.junit.JUnitShell.runTest(JUnitShell.java:625) 
    at com.google.gwt.junit.client.GWTTestCase.runTest(GWTTestCase.java:456) 
    at junit.framework.TestCase.runBare(TestCase.java:127) 
    at junit.framework.TestResult$1.protect(TestResult.java:106) 
    at junit.framework.TestResult.runProtected(TestResult.java:124) 
    at junit.framework.TestResult.run(TestResult.java:109) 
    at junit.framework.TestCase.run(TestCase.java:118) 
    at com.google.gwt.junit.client.GWTTestCase.run(GWTTestCase.java:311) 
    at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130) 
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
+0

Algunos consejos interesantes también se pueden encontrar en http://raibledesigns.com/rd/entry/testing_gwt_applications. – koljaTM

Respuesta

4

La prueba GWT no estaba en el mismo paquete que la clase bajo prueba .. moviéndose en el mismo paquete resuelto este problema. Extraño aunque

+0

Las pruebas de GWT son demasiado lentas, puede probar con Junit y Mockito para acelerar las pruebas de interacción entre widgets –

+1

Un enlace útil en la prueba de unidades de GWT http://blog.hivedevelopment.co.uk/2009 /10/introduction-to-mvp-unit-testing-part.html – MountainRock

15

El problema es probablemente que haya ejecutado la prueba como JUnitTest en lugar de GWT Junit Testcase.

En Eclipse, elimine la configuración de ejecución para la prueba, haga clic con el botón secundario en la clase, presione "Ejecutar como" y seleccione "Caso de prueba GWT".

Funcionó para mí.

Estoy de acuerdo con otras respuestas de que la prueba de GWT es demasiado lenta, pero desafortunadamente, puede necesitarlas de vez en cuando.

+2

Si el "Caso de prueba GWT" no se muestra, asegúrese de que el proyecto tenga marcada la casilla "Utilizar Google Web Toolkit" en "Propiedades del proyecto- > Google-> Web Toolkit ". –

2

Mire su método GWTTestCase.getModuleName() y asegúrese de que está devolviendo el módulo correcto.

Cuestiones relacionadas