Página semiprotejada
De Wikipedia, la enciclopedia libre
Ir a navegaciónSaltar a buscar

Las plantillas son una característica muy poderosa del software MediaWiki utilizado para Wikipedia , pero los usuarios experimentados pueden cometer errores fácilmente. Por lo tanto, las plantillas complejas deben ir acompañadas de cajas de arena y casos de prueba para evitar errores. Los entornos sandbox temporales X1 - X20 o Template Sandbox pueden ser lugares útiles para probar nuevos experimentos o para usuarios nuevos en el desarrollo de plantillas.

Denominación de subpágina de sandbox y testcases

La mayoría de las plantillas protegidas ya tienen una subpágina de espacio aislado y una subpágina de casos de prueba. Los nombres de estas páginas son los predeterminados. En la parte inferior de la página de cada plantilla hay enlaces para crear / editar la caja de arena de la plantilla y las páginas de casos de prueba.

Por ejemplo, estas son las subpáginas de {{ FlagIOCmedalist }} :

¿Para qué tipo de plantillas debería usar sandbox?

Se recomienda aplicar el patrón de caso de prueba a las plantillas que utilizan ParserFunctions que pueden generar resultados de aspecto muy diferente, como los que toman muchos parámetros o los que tienen muchas ramas del #switchoperador.

Para los cuadros de navegación con resultados en su mayoría idénticos en cada página de inclusión, es posible que el beneficio no supere el tiempo y el esfuerzo de crear una página de espacio aislado, pero en caso de duda, hágalo en un espacio aislado. Cualquier plantilla que esté marcada como Plantilla de alto riesgo siempre debe probarse antes de realizar una edición. Con otras páginas, aún debe verificar qué páginas usan la plantilla (a través del enlace "Qué vínculos aquí" en la sección Herramientas de la barra de vínculos en el lado izquierdo de la pantalla).

Cómo crear subpáginas / sandbox y / testcases

  1. Suponga que su plantilla tiene un nombre Template:X. Crea una subpágina con el nombre Template:X/sandbox. Si la plantilla principal usa la plantilla {{ documentación }}, puede hacerlo desde un enlace en la parte inferior del cuadro de documentación azul en la página principal de la plantilla. O puede escribirlo en el cuadro de búsqueda o directamente en la barra de URL de su navegador. Tenga en cuenta que "/ sandbox" está en minúsculas.
  2. Copie todo el contenido de la plantilla principal, incluidas las <noinclude>etiquetas y la plantilla {{ documentación }} si está presente, péguela en la ventana de edición de la subpágina / sandbox y guarde la página. Su resumen de edición debería ser algo así como create sandbox version of [[Template:X]].
    • Nota: si usa el enlace "espejo" en la parte inferior del cuadro de documentación azul, faltarán las etiquetas como <noinclude>y su contenido. Es mejor copiar y pegar manualmente.
  3. Cree otra subpágina con el nombre Template:X/testcases. Esta página solo está vinculada desde la parte inferior del cuadro de documentación azul si realmente existe, por lo que para crearla deberá crearla escribiendo el nombre de la página en el cuadro de búsqueda o en la barra de URL de su navegador. Una vez más, tenga en cuenta que "/ testcases" es todo en minúsculas y una sola palabra.
  4. Coloque la plantilla {{ testcases notice }} en la parte superior de la página, agregue algunos casos de prueba (ver más abajo) y guarde la página.
  5. Agregue su código experimental a Template:X/sandbox. Para probar su código, guarde la página y vaya a la página / testcases. A menudo, necesitará purgar la página / testcases para ver los resultados actualizados; hay un enlace para hacer eso incluido en la plantilla {{ aviso de casos de prueba }}. Una vez que haya purgado la página, compare los resultados de la plantilla principal con los resultados de la zona de pruebas y, si todo parece estar bien, puede actualizar la plantilla principal. Sin embargo, tenga cuidado con los casos de prueba que faltan y con el código que solo se puede probar en ciertos espacios de nombres o en ciertas páginas.

Cómo actualizar las subpáginas existentes de / sandbox y / testcases

Para realizar un cambio en una plantilla que ya tiene subpáginas / sandbox y / testcases, el proceso es similar al anterior.

  1. Es posible que / sandbox no tenga la última versión del código de la plantilla, por lo que antes de realizar un cambio, debe sincronizarlo con la plantilla principal. Copie todo el contenido de la plantilla principal en la subpágina / sandbox y guarde la página. Su resumen de edición debe ser algo así como "sincronizar con la plantilla principal" o simplemente "sincronizar".
  2. Diviértete editando la caja de arena. Cuando tenga algún código que desee probar, guarde la página.
  3. Si ha agregado nuevas funciones o cambiado algún parámetro, debe agregar nuevos casos de prueba a la subpágina / testcases para que puedan probarse. Además, tenga en cuenta que los casos de prueba existentes pueden no estar completos. Está bien reescribir los casos de prueba si no son útiles para lo que está tratando de lograr, pero también considere a los editores que pueden usar los casos de prueba después de usted.
  4. Purgue la página / testcases para actualizar los resultados.
  5. Verifique que los resultados del caso de prueba sean correctos. Si todo se ve bien, copie el código de la caja de arena a la plantilla principal.

Agregar casos de prueba

En la página / testcases, debería haber un caso de prueba para cada comportamiento diferente de su plantilla. Por ejemplo, si su plantilla genera un mensaje de banner, y si el parámetro |italic=yespone ese mensaje en cursiva, debe agregar un caso de prueba para el mensaje normal y otro para el mensaje en cursiva. Si esa plantilla tiene otro parámetro, |date=donde el usuario inserta la fecha, entonces debería haber un tercer caso de prueba para eso. Debe intentar ser minucioso y presentar casos de todas las formas en que los usuarios pueden usar su plantilla; sin embargo, a menudo no es práctico agregar casos de prueba para cada combinación de parámetros, por lo que debe elegir los más relevantes con prudencia.

Hay bastantes estilos diferentes de casos de prueba que puede utilizar. El que elija dependerá de la naturaleza de la plantilla en la que esté trabajando. Por ejemplo, para una salida de plantilla corta que quepa en una línea, puede ser útil colocar los casos de prueba dentro de un wikitable, y para plantillas largas y delgadas como infoboxes, a menudo es mejor mostrarlas una al lado de la otra usando {{ tabla de casos de prueba }}.

Formateo manual

El formateo manual le brinda una gran flexibilidad, pero se debe tener cuidado para asegurarse de que todos los parámetros de la plantilla se ingresen correctamente. Un error en uno de los casos de prueba suele ser más difícil de encontrar que un error en la propia plantilla.

Formato básico

Este formato funciona bien para plantillas de banner y para texto extenso, por ejemplo, citas. Tenga en cuenta que puede formatear este tipo de prueba automáticamente utilizando Plantilla: caso de prueba y otras plantillas similares.

== Título descriptivo ==
 
* <código> <nowiki> {{ plantilla | param1 = valor1 | param2 = value2 }} </nowiki> </code>
 
'''Principal'''
 
{{ plantilla | param1 = valor1 | param2 = value2 }}
 
'''Salvadera'''
 
{{ plantilla / caja de arena | param1 = valor1 | param2 = value2 }}

Cada valor de template , param1 , value1 , etc. debe ser idéntico.

Para las plantillas que utilizan el atributo CSS "flotante", deberá utilizar la plantilla {{ clear }} para evitar que los resultados se agrupen:

== Título descriptivo ==
 
* <código> <nowiki> {{ plantilla | param1 = valor1 | param2 = value2 }} </nowiki> </code>
 
'''Principal'''
 
{{ plantilla | param1 = valor1 | param2 = value2 }}
 
{{claro}}
 
'''Salvadera'''
 
{{ plantilla / caja de arena | param1 = valor1 | param2 = value2 }}
 
{{claro}}

Wikitable

El uso de una wikitable para formatear casos de prueba suele ser útil para plantillas con resultados cortos que deben alinearse correctamente.

Empiece la tabla así:

{| class = "wikitable"
| -
! Código
! Principal
! Salvadera
<! - Cada nuevo caso de prueba se puede agregar así: ->
| -
| <code> <nowiki> {{ plantilla | param1 = valor1 | param2 = value2 }} </nowiki> </code>
| {{ plantilla | param1 = valor1 | param2 = value2 }}
| {{ plantilla / caja de arena | param1 = valor1 | param2 = value2 }}
<! - Termina la tabla así: ->
|}

Formateo automático

Hay varias plantillas que le ayudan a formatear casos de prueba automáticamente. Con estas plantillas, los parámetros y valores solo se ingresan una vez, pero aún se prueban tanto para la plantilla principal como para las plantillas de espacio aislado. Esto evita el problema de los errores en los parámetros del caso de prueba y facilita el mantenimiento de las páginas del caso de prueba. Estas plantillas incluyen:

  • Plantilla: caso de prueba , para casos de prueba de uso general
  • Plantilla: tabla de casos de prueba , para plantillas largas y delgadas, como cuadros de información
  • Plantilla: caso de prueba en línea , para plantillas largas y delgadas, como infoboxes
  • Plantilla: caso de prueba nowiki , para plantillas con invocaciones complejas
  • Plantilla: caso de prueba plegable , para contraer casos de prueba cuando las plantillas principal y sandbox producen el mismo resultado

Tenga en cuenta que todas estas plantillas pueden producir casos de prueba plegables, pero Plantilla: caso de prueba plegable tiene esta función activada de forma predeterminada. Para obtener documentación detallada, consulte las páginas de las plantillas individuales.

Pruebas que no se pueden realizar en las páginas / testcases

Algunas funciones de la plantilla no se pueden probar en las páginas / testcases. Por ejemplo, una plantilla solo puede generar cierto texto cuando está en el espacio de nombres principal, o puede generar diferentes cosas cuando se usa en una página base y cuando se usa en una subpágina. Para este tipo de pruebas, puede utilizar la función "Vista previa de la página con esta plantilla" que puede ver debajo de la ventana de edición en las páginas de la plantilla. Para hacer que esta función sea aún más poderosa, puede instalar User: Jackmcbarn / advancedtemplatesandbox.js , que lo hace utilizable en cualquier espacio de nombres y le permite especificar el título de la plantilla, así como la página para obtener una vista previa. Esto significa que puede editar la plantilla de la zona de pruebas, pero obtener una vista previa de las páginas como si estuviera editando la plantilla principal.

Si puede pensar en alguna prueba que no se pueda realizar en la página / testcases, puede ser útil dejar una nota en la parte superior de la página / testcases que describa qué más necesita pruebas, para que los futuros editores de esa plantilla también estén consciente.

Ejemplos de

Formato básico
Plantilla: Presupuesto , Plantilla: Presupuesto / sandbox y Plantilla: Presupuesto / casos de prueba
Wikitable
Plantilla: Diff , Plantilla: Diff / sandbox y Plantilla: Diff / testcases
Tabla de casos de prueba
Plantilla: asentamiento de Infobox , Plantilla: asentamiento de Infobox / sandbox y Plantilla: asentamiento de Infobox / casos de prueba

Ver también

  • Wikipedia: plantillas de alto riesgo
  • Ayuda: Plantilla - ayuda general con el código de la plantilla
  • Wikipedia: límites de la plantilla - limitaciones técnicas en el uso de la plantilla
  • {{ Template sandbox }}: sandbox para usar en plantillas de prueba
  • Especial: ExpandTemplates
  • Especial: TemplateSandbox