2008-09-30 15 views

Respuesta

1

No estoy seguro de si esto es lo que está buscando, pero en 10g en adelante hay una herramienta para hacer análisis estáticos de código PL/SQL.

información aquí ... http://www.psoug.org/reference/plsql_warnings.html

Tenga en cuenta que se puede activar en cada sesión o nivel de base de datos.

En mi experiencia, se han arrojado bastantes falsos negativos hasta el momento.

1

Encontré algo útil en la página http://www.databasejournal.com/features/oracle/article.php/10893_2197231_3.

select exec.cnt/total.cnt * 100 "Code% coverage" 
from (select count(1) cnt 
     from plsql_profiler_data d, plsql_profiler_units u 
     where d.runid = &&runid 
     and u.runid = d.runid 
     and u.unit_number = d.unit_number 
     and u.unit_name = upper('&&name') 
     and u.unit_owner = upper('&&owner') 
    ) total, 
    (select count(1) cnt 
     from plsql_profiler_data d, plsql_profiler_units u 
     where d.runid = &&runid 
     and u.runid = d.runid 
     and u.unit_number = d.unit_number 
     and u.unit_name = upper('&&name') 
     and u.unit_owner = upper('&&owner') 
     and d.total_occur > 0) exec; 
1

Hay un paquete que puede instalarse llamado DBMS_profiler. Con esto, puede iniciar un perfil y Oracle almacenará datos en tablas especiales. Luego detenga el perfil e informe desde esas tablas.

6

http://www.toadworld.com/BLOGS/tabid/67/EntryID/267/Default.aspx tiene información sobre la comprobación de la cobertura de código utilizando el generador de perfiles PL/SQL.

Puede encontrar información útil sobre la creación de perfiles en 9i o 10g en el artículo 243755.1 de Metalink "Implementación y uso del analizador PL/SQL" para obtener información sobre el código de creación de perfiles. Coge el prof.zip de la parte inferior del artículo, tiene un profiler.sql que formateará tus resultados después de una ejecución de creación de perfiles.

Más documentación 10g está disponible aquí sin una cuenta MetaLinka: http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_profil.htm

Si está ejecutando 11g hay un nuevo jerárquica Profiler documentado aquí: http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28424/adfns_profiler.htm

+1

Actualización: Después de usar el Hierarchical Profiler un poco esta semana, no es tan útil para el cobeje de código: recolecta principalmente datos en los puntos de entrada de cada llamada de función y no en todas las líneas de código como el generador de perfiles original. –

3

Ver SD Test Coverage Tools. Estamos a punto de lanzar una herramienta de cobertura de prueba PLSQL con las mismas capacidades que nuestras otras herramientas, incluyendo una GUI para mostrar los resultados en la parte superior de su código fuente, y un informe de cobertura generado que recopila detalles sobre funciones individuales, así como acumulaciones para paquetes.

EDIT 15/2/2011: la herramienta de producción de cobertura de prueba PLSQL está disponible.

Cuestiones relacionadas