Estoy trabajando en una aplicación de grails. Usamos cobertura para generar los informes de cobertura de código. Ahora quiero modificar el proyecto de Grails para que la compilación falle si la cobertura del código es inferior a, digamos, 90%. ¿Cómo puedo lograr esto en los griales?Proyecto de construcción de grails con éxito solo si pasa la verificación de cobertura
5
A
Respuesta
4
No creo que el complemento de cobertura de código admita esto directamente, pero es bastante fácil hacerlo conectándose a la potente infraestructura de eventos de compilación de Grails. Al colocar esto en su scripts/_Events.groovy
, la construcción fallará si la cobertura está por debajo de un cierto umbral:
eventStatusFinal = { message ->
if (message ==~ /.*Cobertura Code Coverage Complete.*/) {
def report = new XmlSlurper().parse(new File("target/test-reports/cobertura/coverage.xml"))
if (Float.parseFloat(report.'@line-rate'.text()) < 0.90) {
throw new RuntimeException("coverage too low!")
}
}
}
Para ello, debe activar la generación de informes XML con esto en grails-app/conf/BuildConfig.groovy
:
coverage {
xml = true
}
Ajuste el atributo (line-rate
, branch-rate
) y valor según sea necesario.
Cuestiones relacionadas
- 1. Casilla de verificación Grails
- 2. ¿Cómo instalas y usas la cobertura de prueba de Grails?
- 3. Verificación de éxito de la función de correo() PHP
- 4. Python: ¿Establecer con solo verificación de existencia?
- 5. Experiencia con Hudson - Proyecto de matriz de construcción
- 6. ¿Cómo deshabilitar la construcción de un proyecto en Eclipse?
- 7. Problema La construcción de un solo proyecto usando msbuild que tiene varias configuraciones
- 8. Ant/Ivy para la construcción del proyecto
- 9. Herramienta de cobertura de construcción para herramientas de desarrollador de Chrome
- 10. Problema con la construcción del proyecto Android NDK
- 11. ifstream: comprobar si abierto con éxito
- 12. ¿Por qué solo se llama a IValidatableObject.Validate si se pasa la validación de la propiedad?
- 13. Pruebas de integración y unidad en el gran proyecto Grails
- 14. ¿Cobertura de código con nUnit?
- 15. cobertura en el proyecto de varios módulos de maven
- 16. Error de verificación de CSRF, pero solo con IE9
- 17. ¿Qué técnicas ha usado con éxito para mejorar la cobertura del código?
- 18. de verificación si la música se juega
- 19. Los elementos de la casilla de verificación HTML solo se envían si están marcados?
- 20. Dependencias no resueltas en la construcción de jugar 2.0 proyecto
- 21. Excluir métodos de cobertura de código con Cobertura
- 22. Error al eliminar recursos durante la limpieza de proyecto y construcción del proyecto J2ME
- 23. JQuery obtener el valor de la casilla de verificación solo si está marcado
- 24. Cobertura de código/cobertura recomendada valores
- 25. proyecto de construcción periódicamente sólo si los cambios se encuentran en el repositorio
- 26. proyecto Grails - Proyecto de Java en Eclipse Dependencia Común
- 27. Validación personalizada de Grails - Consulta dentro de la verificación de validación - ¿Qué ocurre durante la actualización?
- 28. Medir la cobertura del código solo en el nuevo código
- 29. Medición de la cobertura de documentación con Javadoc y Ant
- 30. jQuery validación no intrusiva en .NET MVC 3 - que muestra la marca de verificación de éxito
Gracias por la respuesta. Lo probaré hoy y te lo haré saber. – Npa
¿Necesitamos llamar a este evento eventStatusFinal cierre desde cualquier lugar. Tengo el plugin de cobertura instalado en mi proyecto. Está generando informes de cobertura de código para mí. ¿No está seguro de cómo se enviará el 'mensaje' a este cierre? – Npa
No, el sistema de compilación Grails lo llama cuando ocurre el evento StatusFinal. El complemento de cobertura de código activa el evento cuando termina de escribir su informe. – ataylor