java - procedimentales - verbos para redactar indicadores de logro pdf
¿Cuáles son las mejores prácticas para nombrar objetivos hormiga? (7)
¿Cuáles son las mejores prácticas para nombrar objetivos hormiga?
Por ejemplo, ¿qué esperarías que se ejecute la "prueba" de destino? Todas las pruebas unitarias? Todas las pruebas funcionales? ¿Ambos?
¿Cuáles son los nombres estándar utilizados para ejecutar diferentes tipos de pruebas (unidad / funcional / todo)? ¿Existen estándares para los nombres de destino para implementar software en J2SE? en J2EE?
Mi proyecto utiliza Ant para un proyecto de Java con Junit, aplicaciones Swing y aplicaciones J2EE.
Hemos hecho buenas experiencias con nombres de objetivos cortos y concisos que utilizan un depender de otras tareas individuales. AFAIK el conjunto estándar general es
- en eso
- limpiar
- compilar
- dist
- prueba
- informe
(no puede encontrar el enlace, sin embargo)
que funciona muy bien para nosotros
Cuando tuvimos que diferenciar los tipos de prueba, los llamamos "prueba.data" y "prueba.nondata" para separar los tipos de prueba, cada uno de ellos tomado como dependiente por la tarea "prueba". Tal vez deberías usar la "convención de nombres de métodos java" como sugirió otro usuario, pero en mi humilde opinión eso no importa.
Si está ejecutando el script ant en forma manual en su equipo local (lo que hago para probar si he roto el script de compilación) es útil si solo tiene que escribir
ant dist
ant test report
en lugar de
ant compile create.distribution
ant test.data test.nondata report.junit.generate report .....
Creo que esto es completamente un punto de preferencia personal, pero yo usaría
-
test
- para pruebas unitarias -
test-integration
- para pruebas de integración -
dbtest
- para pruebas de base de datos (si están incluidas en el elemento anterior) -
test-all
para ejecutar todo lo anterior
Además, soy indiferente al usar las test
o plural, probablemente hice ambas cosas en diferentes proyectos.
Siempre que sean comprensibles y consistentes a lo largo de su (s) proyecto (s), lo que usted elija depende de usted. Los verbos cortos y simples suelen ser la norma, y los objetivos deben dividirse lógicamente.
Puede ir por la ruta sugerida por Matt B, nombrando sus objetivos de prueba por tipo:
- unidad de prueba
- prueba funcional
- test-all
O puede nombrar por herramienta si, por ejemplo, tiene pruebas funcionales Junit, Selenium y Webtest:
- prueba-junit
- test-selenio
- test-webtest
- test-all
Si usa el atributo de descripción para los objetivos que desea exponer a cualquier persona que construya el proyecto, los usuarios pueden realizar una ant -p
para listar los objetivos disponibles y elegir cuál desean. Las descripciones útiles aquí son probablemente más importantes y más valiosas para los usuarios de lo que realmente se nombran los objetivos.
Del manual de hormiga :
El atributo de descripción opcional se puede utilizar para proporcionar una descripción de una línea de este objetivo, que se imprime mediante la opción de línea de comandos -projecthelp. Los destinos sin dicha descripción se consideran internos y no se incluirán en la lista, a menos que se use la opción -verbose o -debug.
Su convención de nomenclatura para los objetivos ant debe ser muy similar a la convención de nomenclatura para los métodos de Java: es decir, simple y descriptiva de lo que hace el objetivo.
Aquí hay un extracto del estándar de Sun para nombrar el método :
Nombrar un método
Aunque el nombre de un método puede ser cualquier identificador legal, las convenciones de código restringen los nombres de los métodos. Por convención, los nombres de métodos deben ser un verbo en minúscula o un nombre de varias palabras que comienza con un verbo en minúscula, seguido de adjetivos, sustantivos, etc. En nombres de varias palabras, la primera letra de cada una de las palabras segunda y siguientes debe estar en mayúscula. Aquí hay unos ejemplos:
run runFast getBackground getFinalData compareTo setX isEmpty
Probablemente la mayor diferencia es el estilo para los objetivos ant, que deberían ser todas las letras mayúsculas con palabras separadas por guiones.
Por ejemplo, los siguientes objetivos me parecen apropiados:
-
run-all-tests
-
build
-
clean
-
test-and-release
-
deploy
-
run-code-coverage-metrics
Al final, intente usar el mismo buen juicio que usa al nombrar métodos. Si sus objetivos son claros, descriptivos y fáciles de entender, está en buena forma.
Para obtener información más detallada sobre el tema, consulte Los elementos de Ant Style en el wiki de Ant.
Hay un estándar que se usa razonablemente ampliamente. Cualquier nombre de destino que comience con el carácter - no se puede invocar desde la línea de comando y, como tal, sin duda debe ser uno que no esté destinado a ejecutarse directamente. A veces, esto se conoce como un objetivo oculto .
Para mis proyectos Java utilizo los nombres definidos en el ciclo de vida predeterminado de maven como base. Para otros proyectos, también utilicé los objetivos estándar de autoconf de GNU .
Consulte la sección "Convenciones de nombres" en esta página: Los elementos del estilo Ant
Los siguientes objetivos son comunes a muchas compilaciones. Siempre evite cambiar el comportamiento de un nombre de destino bien conocido. No necesita implementar todos estos en un solo proyecto.
all Build and test everything; create a distribution, optionally install.
clean Delete all generated files and directories.
deploy Deploy the code, usually to a remote server.
dist Produce the distributables.
distclean Clean up the distribution files only.
docs Generate all documentation.
init Initialize the build: create directories, call <tstamp> and other common actions.
install Perform a local installation.
javadocs Generate the Javadoc pages.
printerdocs Generate printable documents.
test Run the unit tests.
uninstall Remove a local installation.
Esta página también proporciona otras buenas pautas.