2010-03-11 10 views
6

Supongamos que hay proyectos Java y Junit en un área de trabajo de Eclipse. Y todas las pruebas unitarias están ubicadas en el proyecto Junit y dependen del proyecto Java de la aplicación. Cuando realizo cambios en un método Java, necesito encontrar las pruebas unitarias que utilizan el método directa o indirectamente, de modo que pueda ejecutar las pruebas correspondientes localmente en mi PC antes de ingresar al control de fuente. No quiero ejecutar todo el proyecto junit, ya que lleva tiempo.Cómo encontrar pruebas Junit que usan un método Java dado directa o indirectamente

Podría utilizar la jerarquía de llamadas de Eclipse para expandir los métodos del llamante uno por uno hasta que encuentre un método de prueba. Pero para un proyecto que incluye más de 1 millón de líneas de código fuente, también es necesario buscar en la jerarquía de llamadas.

El alcance de búsqueda dentro de la vista de jerarquía de llamadas no parece ayudar mucho.

Agradecer cualquier ayuda.

Respuesta

1

¿Por qué no hacer clic derecho en el método modificado y seleccionar "Referencias-> Espacio de trabajo (o Conjunto de trabajo si está configurado correctamente)".

Esto debería darle una lista de métodos invocando el que acaba de cambiar. Los resultados de búsqueda se pueden organizar por paquete o proyecto. Seleccione la organización del proyecto y expanda el proyecto JUnit, y lo que está buscando probablemente sea lo único allí.

+0

Si C es llamado por B, que es llamada por A, por ejemplo, ilustrado por C-B-A, y suponiendo que A es el método de prueba. Al buscar referencias de C, solo muestra B. Por supuesto, podríamos volver a buscar las referencias de B, pero es mejor usar "jerarquía de llamadas" para este tipo de "excavación". Sin embargo, para el proyecto en el que estoy trabajando, es muy típico que la jerarquía de llamadas sea muy grande como esta ("-" significa llamada por): C-B | D-E-F | G-H-I | R-S-T- Lleva mucho tiempo cavar en el árbol y encontrar el método de prueba. ¿Hay una mejor forma/herramienta? –

Cuestiones relacionadas