Pregunta

¿Funciona la cobertura de la sucursal en la siguiente declaración?

Esperaba un indicador rojo porque la primera expresión solo tiene pruebas donde es falsa y no es verdadera.

tax.Voided = P_tax.Amount == 1012312870000.42M || P_tax.Amount < 0.00M;

La primera expresión siempre es falsa y la segunda a veces es verdadera: ReportGenerator snapshot

¿Fue útil?

Solución

No confunda los informes por ReportGenerator con la salida XML de OpenCover; Aunque hasta que OpenCover comience a trabajar en sus propios informes, Informe Generator es actualmente el mejor que encontrará por ahora.

Su problema aquí es que la herramienta de informes no informa la cobertura (roja/verde) basada en la cobertura de la rama solo en la cobertura de secuencia.

Deberá observar la descripción general de la cobertura de sucursal, el método (que se resume en la parte superior del informe); para una vista más detalle, debe ver los datos del informe XML para el método y quizás comparar eso con la IL (donde OpenCover obtiene la información de cobertura).

Nota: OpenCover no sabe qué lenguaje escribió el código en todo lo que ve es la IL que se ha producido.

Otros consejos

Si su herramienta de cobertura no entiende que puede tener varias entidades "cubiertas" interesantes dentro de Una línea, es probable que obtenga un informe de que su línea está cubierta si se cubre alguna entidad de cobertura en esa línea.

Las herramientas que los archivos de clase de instrumentos son, AFAIK, limitados de esta manera porque los archivos de clase solo contienen información relacionada con el código de clase con las líneas de origen, no las líneas parciales.

Nuestro Herramienta de cobertura de prueba de Java (y otros miembros de nuestra herramienta de cobertura de prueba Famility) No instrumenten los archivos de código de clase. Más bien, instrumentan el código fuente y rastrean la información de la línea parcial (línea de inicio/columna, línea de finalización/columna) con precisión.

Nuestra herramienta no tendría ningún problema para mostrar la cobertura en las partes individuales de la declaración.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top