stringtranslate.com

Wikipedia: plantilla de sandbox y casos de prueba

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

Para el desarrollo de plantillas completamente nuevas, los entornos sandbox de usuario son apropiados.

Nomenclatura de subpáginas de sandbox y casos de prueba

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

Por ejemplo, aquí están las subpáginas de {{ FlagIOCmedalist }} :

¿Para qué tipo de plantillas debería utilizar Sandbox?

Se recomienda encarecidamente aplicar el patrón de caso de prueba a 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 cuadros de navegación con resultados en su mayoría idénticos en cada página de transclusión, es posible que el beneficio no supere el tiempo y el esfuerzo para crear una página de espacio aislado, pero en caso de duda, hágalo en un espacio aislado. Cualquier plantilla 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é enlaces aquí" en la sección Herramientas de la barra de enlaces en el lado izquierdo de la pantalla).

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

  1. Supongamos que su plantilla se llama Template:X. Crea una subpágina con el nombre Template:X/sandbox. Si la plantilla principal utiliza 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á todo en minúsculas.
  2. Copie todo el contenido de la plantilla principal, incluidas <noinclude>las 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 utiliza el enlace "espejo" en la parte inferior del cuadro de documentación azul, <noinclude>faltarán etiquetas como y su contenido. Lo mejor es copiar y pegar manualmente.
  3. Crea 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. Nuevamente, tenga en cuenta que "/testcases" está todo en minúsculas y en 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ás limpiar la página /testcases para ver los resultados actualizados; Hay un enlace para hacerlo incluido en la plantilla {{ testcases Notice }}. Después de haber limpiado la página, compare los resultados de la plantilla principal con los resultados de la zona de pruebas y, si todo se ve 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 determinados espacios de nombres o en determinadas páginas.

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

Para realizar un cambio en una plantilla que ya tiene las 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 debería ser algo así como "sincronizar con la plantilla principal" o simplemente "sincronizar".
  2. Diviértete editando el sandbox. Cuando tenga algún código que desee probar, guarde la página.
  3. Si agregó funciones nuevas o cambió algún parámetro, debe agregar nuevos casos de prueba a la subpágina /testcases para que se puedan probar. Además, tenga en cuenta que es posible que los casos de prueba existentes no estén completos. Está bien reescribir los casos de prueba si no son útiles para lo que intenta lograr, pero también considere editores que puedan 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 del sandbox a la plantilla principal.

Agregar casos de prueba

En la página /testcases, debe 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 resulta práctico agregar casos de prueba para cada combinación de parámetros, por lo que debe elegir sabiamente los más relevantes.

Hay bastantes estilos diferentes de casos de prueba que puede utilizar. Cuál elijas depende de la naturaleza de la plantilla en la que estás trabajando. Por ejemplo, para resultados de plantilla cortos que caben en una línea, puede ser útil colocar los casos de prueba dentro de una tabla wiki, y para plantillas largas y delgadas, como cuadros de información, a menudo es mejor mostrarlos uno al lado del otro usando {{ tabla de casos de prueba }}.

Formateo manual

El formateo manual le brinda una gran flexibilidad, pero se debe tener cuidado para garantizar 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 banners y para textos extensos, por ejemplo, citas. Tenga en cuenta que puede formatear este tipo de pruebas automáticamente usando Plantilla: Caso de prueba y otras plantillas similares.

== Título descriptivo == * <código><nowiki>{{ plantilla | parámetro1 = valor1 | parámetro2 = valor2 }}</nowiki></code> '''Principal''' {{ plantilla | parámetro1 = valor1 | parámetro2 = valor2 }} '''Salvadera''' {{ plantilla /zona de pruebas| parámetro1 = valor1 | parámetro2 = valor2 }}

Cada valor de plantilla , parámetro1 , valor1 , etc. debe ser idéntico.

Para las plantillas que usan el atributo CSS "flotante", necesitarás usar la plantilla {{ clear }} para evitar que los resultados se agrupen:

== Título descriptivo == * <código><nowiki>{{ plantilla | parámetro1 = valor1 | parámetro2 = valor2 }}</nowiki></code> '''Principal''' {{ plantilla | parámetro1 = valor1 | parámetro2 = valor2 }} {{claro}} '''Salvadera''' {{ plantilla /zona de pruebas| parámetro1 = valor1 | parámetro2 = valor2 }} {{claro}}

Wikitable

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

Comience la tabla así:

{| clase="wikitabla"|-! Código! Principal! Salvadera<!-- Cada nuevo caso de prueba se puede agregar así: -->|-| <código><nowiki> {{ plantilla | parámetro1 = valor1 | param2 = valor2 }} </nowiki></code>
| {{ plantilla | parámetro1 = valor1 | parámetro2 = valor2 }}| {{ plantilla /zona de pruebas| parámetro1 = valor1 | parámetro2 = valor2 }}<!-- Termina la tabla así: -->|}

Formateo automático

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

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

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

Algunas características de la plantilla no se pueden probar en las páginas /testcases. Por ejemplo, una plantilla solo puede generar cierto texto cuando se encuentra en el espacio de nombres principal, o puede generar cosas diferentes 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 página con esta plantilla" que puede ver debajo de la ventana de edición en las páginas de plantilla. Para hacer que esta característica sea aún más poderosa, puede instalar User:Jackmcbarn/advancedtemplatesandbox.js , lo que la 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 realmente estuviera editando la plantilla principal.

Si se le ocurre 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 describiendo qué más necesita ser probado, para que los futuros editores de esa plantilla también puedan consciente.

Ejemplos

Formato básico
Plantilla:Cotización , Plantilla:Cotización/sandbox y Plantilla:Cotización/casos de prueba
Wikitable
Plantilla:Diff , Plantilla:Diff/sandbox y Plantilla:Diff/testcases
tabla de casos de prueba
Plantilla: liquidación de Infobox , Plantilla: liquidación de Infobox/sandbox y Plantilla: liquidación de Infobox/casos de prueba

Ver también