Modo Depurador
Con el Depurador puede depurar expresiones XPath en el contexto de un archivo XML de trabajo. Para acceder al Depurador seleccione Iniciar el depurador en el menú desplegable Iniciar evaluación/depuración (imagen siguiente). Así se activa el modo Depurador. Ahora puede alternar entre el modo Generador (como ayuda para construir la expresión) y el Evaluador (para depurar la expresión). Para iniciar la depuración haga clic en Iniciar evaluación/depuración (F5). Asegúrese primero de que el modo seleccionado es el Depurador.
Para iniciar la depuración haga clic en Iniciar evaluación/depuración (F5). Asegúrese primero de que el modo seleccionado es el Depurador.
|
Diseño del modo Depurador
En el modo Depurador se añaden otros dos paneles al panel Resultados (imagen siguiente).
•el panel Pila de llamadas y puntos de depuración, que se divide en dos pestañas.
•el panel Variables y expresiones de inspección; tanto las expresiones de inspección como las variables se muestran en el mismo panel.
Con el modo Depurador puede:
•acceder al proceso de evaluación XPath paso por paso para ver cómo se va evaluando la expresión XPath. Puede usar el botón Paso a paso por instrucciones (F11) para ello. En cada paso de la evaluación se resalta en amarillo la parte de la expresión que se está evaluando (imagen anterior) y el resultado de la evaluación de ese paso aparece en el panel Resultados. Por ejemplo, en la imagen anterior se han seleccionado todos los elementos section descendientes del elemento book.
•definir puntos de interrupción donde quiera que se detenga la evaluación para poder comprobar los resultados en esos puntos. Puede recorrer toda la evaluación deteniéndose solamente en los puntos de interrupción. Use el botón de la barra de herramientas Iniciar el depurador (F5) para ello. Esta opción es más rápida que la de detenerse en todos los pasos con Paso a paso por instrucciones (F11).
•definir puntos de seguimiento que puede consultar después en un informe de los resultados de los pasos marcados como puntos de seguimiento. Con esta opción la evaluación no se detiene (excepto en los puntos de seguimiento) pero los resultados de los puntos de seguimiento aparecen en una lista en el panel Resultados.
•usar las expresiones de inspección para comprobar información (como datos de documentos o aspectos de la evaluación), lo cual resulta especialmente útil en los puntos de interrupción.
•mostrar las variables del alcance de la evaluación, incluyendo sus valores, en el panel Variables y expresiones de inspección.
•mostrar las llamadas realizadas por el procesador a un paso de la evaluación en la pestaña Pila de llamadas del panel Pila de llamadas y puntos de depuración.
•si ha definido puntos de interrupción y de seguimiento, entonces estos aparecen en la pestaña Puntos de depuración del panel Pila de llamadas y puntos de depuración.
Para más información sobre estas características consulte sus descripciones más abajo.
Ejecutar el depurador
A grandes rasgos, estos suelen ser los pasos que se siguen para depurar una expresión XPath:
1.Introducir la expresión XPath en el panel Expresión.
2.Establecer los puntos de interrupción y de seguimiento que quiera. Un punto de interrupción es un punto en el que se detiene la evaluación. Un punto de seguimiento es un punto en el que la evaluación queda grabada, lo que permite rastrear los resultados de la evaluación.
3.Si hace clic en Iniciar el depurador, la evaluación se ejecutará en un solo paso hasta el final, a no ser que haya marcado algún punto de interrupción en la expresión. Haga clic varias veces en Iniciar el depurador para avanzar entre los puntos de interrupción hasta el final de la evaluación.
4.Use la función Paso a paso por instrucciones/Paso a paso para salir/Paso a paso por procedimientos para avanzar por la evaluación paso a paso.
|
Paso a paso por instrucciones, para salir y por procedimientos
Con Paso a paso por instrucciones puede avanzar paso a paso por la evaluación. Cada vez que hace clic en este comando pasa al siguiente paso de la evaluación; el paso actual aparece resaltado en la expresión (imagen siguiente). El comando Paso a paso para salir va al paso de un nivel superior al del paso actual, mientras que el comando Paso a paso por procedimientos se salta los pasos de niveles inferiores y va directamente al siguiente paso del mismo nivel que el actual. Para probar estos comandos puede usar la expresión de más abajo y hacer clic en los tres botones de este comando para ver cómo funcionan.
La imagen siguiente muestra la evaluación cuando el procesamiento se ha pausado al alcanzar el paso newsitem. En este paso el resultado muestra los cuatro nodos newsitem.
Puntos de interrupción
Los puntos de interrupción son puntos en los que quiere que el Depurador se detenga después de haberlo iniciado con el comando Iniciar el depurador. Son útiles si tiene que analizar una parte concreta de la expresión. Cuando el depurador se detiene en el punto de interrupción, puede comprobar el resultado y podría usar la función Paso a paso por instrucciones para mostrar los resultados de los pasos siguientes de la evaluación. Para definir un punto de interrupción coloque el cursor en la expresión, en el punto en el que quiere introducir el punto de interrupción, y haga clic en el botón de la barra de herramientas Insertar o quitar punto de interrupción (F9). El punto de interrupción se marcará con una línea roja discontinua. Para eliminar el punto de interrupción basta con seleccionarlo y volver a hacer clic en el comando Insertar o quitar punto de interrupción (F9).
Véase también Puntos de depuración, más abajo.
Puntos de seguimiento
Los puntos de seguimiento son puntos en los que se graban los resultados. Estos resultados aparecen en la estructura Seguimientos de la pestaña Resultados (imagen siguiente). Esto permite ver todos los resultados de la evaluación en partes concretas de la expresión. Por ejemplo, en la imagen siguiente los puntos de seguimiento se pusieron en los nodos team y member; los resultados que corresponden a estos puntos de seguimiento aparecen en la estructura Seguimientos.
Para definir un punto de seguimiento coloque el cursor en el punto que quiera y haga clic en el botón de la barra de herramientas Insertar o quitar punto de seguimiento (Mayús+F9). Para marcar el punto de seguimiento aparece una línea discontinua azul sobre esa parte de la expresión (imagen siguiente). Para quitar un punto de seguimiento basta con seleccionarlo y volver a hacer clic en Insertar o quitar punto de seguimiento (Mayús+F9).
Nota: | si en algún punto de la expresión hay un punto de interrupción y un punto se seguimiento, entonces la línea discontinua alterna los colores rojo y azul. |
Véase también Puntos de depuración, más abajo.
Variables, expresiones de inspección y pila de llamadas
Las variables y las expresiones de inspección se muestran en el panel Variables y expresiones de inspección (panel inferior en el centro en la imagen siguiente).
Variables
Las variables que se han declarado en la expresión y que están dentro del alcance del paso actual de la evaluación aparecen con sus valores actuales correspondientes. Por ejemplo, en la imagen anterior el procesamiento se ha pausado en el punto de interrupción que hay en el elemento headline. La variable \$i está dentro del alcance en este paso de la evaluación, por lo que \$i se muestra con su valor actual, que en la imagen anterior es el primer nodo newsitem.
Expresiones de inspección
Las expresiones de inspección son expresiones que puede introducir antes de que comience la evaluación o en un momento en que esta se detenga. Este tipo de expresiones se pueden usar para:
•probar ciertas condiciones. Por ejemplo, en la imagen anterior la expresión de inspección \$i/metainfo/enteredBy/@id="NED" se usa para probar si este elemento lo introdujo el miembro del equipo que tiene el identificador NED. El resultado true en el caso del primer elemento de las noticias nos comunica que ese elemento cumple esta condición.
•encontrar datos dentro de un contexto concreto. Por ejemplo, dentro del contexto de un elemento Company podríamos introducir la expresión de inspección @id para buscar el código de cliente de esa empresa en el documento XML de destino.
•generar datos adicionales. Por ejemplo, se puede generar una cadena de texto apropiada para indicar el número total de elementos nuevos.
Para introducir una expresión de inspección haga clic en Agregar entrada de inspección en la barra de herramientas del panel (dentro del círculo rojo en la imagen anterior), introduzca la expresión y pulse la tecla Entrar para terminar. Para quitar una expresión de inspección, selecciónela y haga clic en Quitar la entrada de inspección seleccionada en la barra de herramientas. Si durante la depuración la expresión no se puede evaluar correctamente por alguna razón (por ejemplo, si una de sus variables no entra dentro del alcance), entonces la expresión de inspección aparece en rojo.
Pila de llamadas
La pestaña Pila de llamadas del panel Pila de llamadas y puntos de depuración (panel inferior derecho en la imagen anterior) muestra las llamadas del procesador hasta ese punto de la depuración. La llamada actual del procesador está resaltada en amarillo. Tenga en cuenta que solo se muestran las llamadas que han llevado directamente al paso de evaluación actual.
Puntos de depuración
La pestaña Puntos de depuración del panel Pila de llamadas y puntos de depuración (panel inferior derecho en la imagen anterior muestra los puntos de interrupción (puntos rojos) y los puntos de seguimiento (puntos azules) que haya colocado en la expresión. Cada punto de depuración aparece en la lista con su número de línea y de carácter. Por ejemplo, AxisStep@2:12 significa que hay un punto de depuración en la línea 2, carácter 12 de la expresión del panel Expresión.
Algunas de las funciones que ofrece este modo son:
•En el caso de los puntos de interrupción, puede introducir una condición de interrupción (i) haciendo doble clic en Insertar condición de interrupción en el panel Puntos de depuración, (ii) introduciendo la expresión de la condición y (iii) pulsando la tecla Entrar. Ese punto de interrupción se habilita solo si la condición evalúa en true. Por ejemplo, en la imagen anterior, la condición de interrupción \$i/metainfo/enteredBy/@id="ABE" habilita el punto de interrupción en el encabezado de los elementos de las noticias que haya introducido el miembro del equipo que tiene el identificador ABE. La imagen muestra la evaluación pausada en este punto. (Tenga en cuenta que la expresión de inspección de este punto de interrupción devuelve false.)
•Puede activar o desactivar todos los puntos de depuración haciendo clic en los botones correspondientes de la barra de herramientas: Habilitar todos los puntos de depuración y Deshabilitar todos los puntos de depuración (dentro de los círculos verdes en la imagen anterior). Cuando se deshabilita un punto de depuración, este se desactiva para todas las evaluaciones hasta que se vuelva a habilitar.
•Puede habilitar/deshabilitar puntos de interrupción individuales en sus correspondientes menús contextuales.
Comandos de la barra de herramientas en los paneles
Los paneles del cuadro de diálogo "Editar expresión XPath" del modo Depurador (imagen anterior) contiene botones para las funciones de navegación, búsqueda y copia. Estos iconos se describen en la siguiente tabla, empezando por el icono de la izquierda del todo. Los comandos correspondientes también están disponibles en el menú contextual de los elementos de la lista de resultados.
Icono | Acción |
Siguiente, Anterior | Selecciona el elemento siguiente o anterior respectivamente de la lista de resultados. |
Copiar la línea de texto seleccionada en el portapapeles | Copia la columna de valores del resultado seleccionado en el portapapeles. Para copiar todas las columnas debe activar el comando La copia incluye todas las columnas (ver más abajo). |
Copiar todos los mensajes en el portapapeles | Copia la columna de valores de todos los resultados en el portapapeles, incluidos los valores que estén vacíos. Cada elemento se copia en una línea distinta. |
La copia incluye todas las columnas | Alterna entre copiar todas las columnas y solamente la columna de valores. El separador de las columnas es un espacio. |
Buscar | Abre el cuadro de diálogo "Buscar" para poder buscar cadenas, incluso caracteres especiales, en la lista de resultados. |
Buscar anterior | Busca la instancia anterior del término de búsqueda introducido en el cuadro de diálogo "Buscar". |
Buscar siguiente | Busca la instancia siguiente del término de búsqueda introducido en el cuadro de diálogo "Buscar". |
Expandir con secundarios | Expande el elemento seleccionado y todos sus descendientes. |
Contraer con secundarios | Contrae el elemento seleccionado y todos sus descendientes. |
Borrar | Borra la lista de resultados. |