es:manual:spsl
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| es:manual:spsl [2026/01/20 18:02] – [@Command] root | es:manual:spsl [2026/02/17 15:13] (actual) – root | ||
|---|---|---|---|
| Línea 17: | Línea 17: | ||
| A continuación se explicará el modo en que se procesa un script explicando una a una las // | A continuación se explicará el modo en que se procesa un script explicando una a una las // | ||
| - | Por ejemplo, supongamos que para probar un fichero, lo único que nos interesa saber es si un fichero '' | + | Por ejemplo, supongamos que para probar un fichero, lo único que nos interesa saber es cuantas lineas contienen la palabra '' |
| - | grep -l function test.txt | + | grep -c function test.txt |
| - | que devuelve | + | que devuelve |
| - | La sentencia de control. A partir | + | |
| + | ==== Sentencias de prueba simple. Salida directa ==== | ||
| + | |||
| + | La opción mas sencilla son las // | ||
| + | |||
| + | grep -c function | ||
| + | |||
| + | En este caso la sentencia de prueba devolverá a Siette directamente el valor que la ejecución de la instrucción devuelva por el flujo de datos de la salida estándar ('' | ||
| + | |||
| + | El [[es: | ||
| + | - Se recibe el fichero test.txt | ||
| + | - Se crea un directorio temporal donde sitúa el fichero recibido. | ||
| + | - Se copian en ese directorio los ficheros auxiliares del directorio base. | ||
| + | - Se ejecuta el comando '' | ||
| + | - Se captura la salida | ||
| + | - Esta salida | ||
| + | - Se busca el patrón que encaja con esta respuesta, para determinar si la respuesta es correcta. | ||
| + | - Se muestra al usuario su respuesta y la corrección (si el test lo permite) | ||
| ==== Sentencias de prueba completas ==== | ==== Sentencias de prueba completas ==== | ||
| Línea 43: | Línea 60: | ||
| Por ejemplo: | Por ejemplo: | ||
| - | grep -l function test.txt | + | grep -c function test.txt |
| - | que indica que debe ejercutar se la sentencia | + | En este caso los patrones de respuesta |
| + | - Se recibe el fichero test.txt | ||
| + | - Se crea un directorio temporal donde situa el fichero | ||
| + | - Se copian en ese directorio los ficheros auxiliares del directorio base. | ||
| + | - Se ejecuta el comando | ||
| + | - Se captura la salida de este comando (supongamos '' | ||
| + | - Se compara la salida con el patrón Siette ''< | ||
| + | - Si el patrón encaja se devuelve | ||
| + | - Se busca el patrón que encaje con esta respuesta, para determinar si la respuesta es correcta. En este caso los patrones de Siette pueden son ''< | ||
| + | - Una vez que se ha determinado si la respuesta es correcta, o no, se muestra al usuario la corrección si el test lo permite. Nótese que el valor devuelto por el script (la etiqueta '' | ||
| - | Nótese que el valor devuelto por el script se inserta dentro | + | A diferencia del caso anterior |
| - | ==== @Correspondence ==== | + | |
| - | ==== @SiettePattern | + | ==== Patrones para determinar la respuesta |
| - | ==== @JavaPattern ==== | + | A efectos de determinar la respuesta que se origina como consecuencia de la ejecución del script, es decir la prueba de concordancia entre la // |
| - | ==== @MathPattern ==== | + | |
| - | La prueba de concordancia entre la // | + | === @Correspondence === |
| + | === @SiettePattern === | ||
| + | === @JavaPattern === | ||
| + | === @MathPattern === | ||
| Estas // | Estas // | ||
| Línea 109: | Línea 138: | ||
| Si no hay ninguna //sentencia de control// para cambiar el patrón, por defecto se usa el [[es: | Si no hay ninguna //sentencia de control// para cambiar el patrón, por defecto se usa el [[es: | ||
| - | ==== Sentencias de prueba simple. Salida directa ==== | ||
| - | |||
| - | La opción mas sencilla son las // | ||
| - | |||
| - | grep -l function test.txt | ||
| - | |||
| - | En este caso la sentencia de prueba devolverá a Siette directamente el valor que la ejecución de la instrucción devuelva por el flujo de datos de la salida estándar ('' | ||
| ==== Ejecución de una lista de sentencias de prueba ==== | ==== Ejecución de una lista de sentencias de prueba ==== | ||
| Línea 126: | Línea 148: | ||
| Evidentemente en este caso interesa que se ejecuten ambas pruebas. Pueden ocurrir varias situaciones: | Evidentemente en este caso interesa que se ejecuten ambas pruebas. Pueden ocurrir varias situaciones: | ||
| - | prueba se satisface, por lo que el script no termina, sino que continúa | + | prueba se satisface, por lo que el script no termina, sino que continúa |
| ''< | ''< | ||
| Línea 417: | Línea 439: | ||
| '' | '' | ||
| - | < | + | < |
| + | | ||
| Esto sirve para indicarle al alumno cuando se muestren los resultados de la evaluación que la respuesta que dió (al enviar el fichero), ha provocado que la ejecución del comando '' | Esto sirve para indicarle al alumno cuando se muestren los resultados de la evaluación que la respuesta que dió (al enviar el fichero), ha provocado que la ejecución del comando '' | ||
| Línea 436: | Línea 459: | ||
| El efecto de esta instrucción es similar al anterior, salvo que en este caso se añade tambien la posible respuesta correcta mediante la inclusión del patrón de respuesta con el que se compara el resultado de la ejecución. Siguiendo con el ejemplo anterior, en este caso la salida sería | El efecto de esta instrucción es similar al anterior, salvo que en este caso se añade tambien la posible respuesta correcta mediante la inclusión del patrón de respuesta con el que se compara el resultado de la ejecución. Siguiendo con el ejemplo anterior, en este caso la salida sería | ||
| - | < | + | < |
| < | < | ||
| - | < | + | < |
| + | <font color=' | ||
| Esto sirve para indicarle al alumno cuando se muestren los resultados de la evaluación que la respuesta que dió (al enviar el fichero), ha provocado que la ejecución del comando '' | Esto sirve para indicarle al alumno cuando se muestren los resultados de la evaluación que la respuesta que dió (al enviar el fichero), ha provocado que la ejecución del comando '' | ||
| - | La opción por defecto es '' | + | La opción por defecto es '' |
| En caso de que la respuesta se considere correcta, es decir, cuando la ejecución ha llegado al final del //script de procesamiento//, | En caso de que la respuesta se considere correcta, es decir, cuando la ejecución ha llegado al final del //script de procesamiento//, | ||
| Línea 580: | Línea 604: | ||
| || TEXTLABEL || Es una cadena de caracteres alfanumérica cualquiera || | || TEXTLABEL || Es una cadena de caracteres alfanumérica cualquiera || | ||
| || VARIABLE || Representa el nomnre de una variable, similar a las variables en cualquier lenguaje de programación || | || VARIABLE || Representa el nomnre de una variable, similar a las variables en cualquier lenguaje de programación || | ||
| - | || USER@HOST || Representa una dirección de correo electrónico. || | + | || USER@HOST || Representa |
| || COMMANDLINE || Representa una sentencia cualquiera que puede ser ejecutada en el shell de UNIX. Puede contener tuberias, comandos del shell o programas compilados. || | || COMMANDLINE || Representa una sentencia cualquiera que puede ser ejecutada en el shell de UNIX. Puede contener tuberias, comandos del shell o programas compilados. || | ||
| || RESULT || En general representa un patrón contra el que se compara la salida de la instrucción COMMANDLINE de acuerdo al tipo de patrón definido. Alternativamente puede contener el nombre de un fichero, si la definición de patrón ('' | || RESULT || En general representa un patrón contra el que se compara la salida de la instrucción COMMANDLINE de acuerdo al tipo de patrón definido. Alternativamente puede contener el nombre de un fichero, si la definición de patrón ('' | ||
es/manual/spsl.1768932140.txt.gz · Última modificación: por root
