Tutorial de Pytest: Cómo Pytest genera informes de prueba

1. ¿Cómo genera pytest un informe de prueba?

pytest es un marco de prueba de Python popular que se puede usar para escribir y ejecutar varios tipos de pruebas. En comparación con los marcos de prueba tradicionales basados ​​en unittest, pytest es más flexible y fácil de usar, y admite varias extensiones de complementos. Al mismo tiempo, pytest también brinda la función de generar informes de prueba, lo que puede ayudar a los desarrolladores a comprender mejor los resultados de las pruebas y administrar los casos de prueba.

pytest puede usar múltiples complementos para generar informes de prueba. Los complementos comúnmente utilizados incluyen pytest-html, pytest-json, pytest-xdist, etc. Estos complementos pueden generar resultados de prueba en archivos en formato HTML, JSON y XML. , o en el comando Se muestra un resumen de los resultados de la prueba en el terminal de línea. Entre ellos, el complemento pytest-html es el complemento más utilizado para generar informes de prueba en formato HTML, por lo que a continuación se utilizará pytest-html como ejemplo de introducción.

    1. Instale el complemento pytest-html

Antes de usar el complemento pytest-html para generar informes de prueba, primero debe instalar este complemento. Se puede instalar a través de la herramienta pip, solo ejecuta el siguiente comando:

pip install pytest-html

    2. Ejecute pytest y genere un informe de prueba

Después de instalar el complemento pytest-html, agregue la opción --html cuando ejecute pytest para generar un informe de prueba. Por ejemplo, ejecute el siguiente comando para ejecutar todos los archivos de prueba que comiencen con test_ en el directorio actual y guarde los resultados de la prueba como archivo report.html:

pytest --html=report.html

Después de la ejecución, pytest ejecutará automáticamente todos los casos de prueba y generará un archivo report.html. Si desea guardar el informe en una carpeta específica, puede usar el siguiente comando:

pytest --html=./report/report.html

Esto guardará el informe de prueba en el archivo report.html en la carpeta de informes.

    3. Ver el informe de la prueba

Después de generar el informe de prueba, puede ver el contenido del informe a través de un navegador. Tome el navegador Chrome como ejemplo, busque el archivo report.html y haga doble clic para abrirlo, y podrá ver el informe de prueba en el navegador. El informe de prueba generalmente incluye un resumen de los resultados de la prueba, detalles del caso de prueba, tiempo de ejecución del caso de prueba, información de error, etc. El formato y el contenido específicos se pueden ajustar de acuerdo con los ajustes de configuración de pytest-html y la escritura del caso de prueba.

2. ¿Cómo ve pytest el informe de prueba?

Abra el archivo de informe de prueba (como report.html) en el navegador para ver el informe de prueba. Los informes de prueba suelen incluir el resumen de los resultados de la prueba, los detalles del caso de prueba, el tiempo de ejecución del caso de prueba, la información de error, etc., lo que puede ayudar a los desarrolladores a comprender rápidamente el estado de la prueba, la cobertura del caso de prueba y la información de error, mejorando así la eficiencia y la calidad de la prueba.

3. ¿Qué configuraciones se pueden usar para configurar el informe de prueba?

El complemento pytest-html proporciona varios elementos de configuración para ayudar a los desarrolladores a personalizar el método de generación y el formato de salida de los informes de prueba. Por ejemplo, puede establecer la ruta de generación del informe, el título del informe, la información del encabezado del informe y la información de la parte inferior del informe a través de los siguientes elementos de configuración:

   1. Ruta de generación de informes

Puede usar la opción --html para establecer la ruta de generación del informe, por ejemplo:

pytest --html=./report/report.html

    2. Título del informe

El título del informe se puede configurar usando la opción --title, por ejemplo:

pytest --html=./report/report.html --title="My Test Report"

    3. Información del encabezado del informe

Puede usar la opción --header para establecer la información del encabezado del informe, por ejemplo:

pytest --html=./report/report.html --header="<h1>My Test Report</h1>"

    4. Informe de información inferior

Puede usar la opción --footer para configurar la información inferior del informe, por ejemplo:

pytest --html=./report/report.html --footer="<p>Generated by pytest-html</p>"

También puede establecer estilos, capturas de pantalla, gráficos circulares y gráficos de barras a través de otros elementos de configuración. Además, pytest-html también es compatible con funciones como la visualización en varios idiomas y varios navegadores y la salida de varios tipos de resultados, lo que mejora en gran medida la eficiencia y la calidad de la generación de informes de prueba.

4. El proceso completo de generación de informes de prueba por pytest

A continuación, usaremos un ejemplo simple para presentar cómo usar el complemento pytest-html para generar informes de prueba. Supongamos que tenemos un archivo llamado calc.py , que contiene dos funciones add() y subtract(), que se utilizan para realizar la suma y resta de dos números. Escribimos un conjunto de casos de prueba (test_calc.py) para probar estas dos funciones, el código es el siguiente:

import pytest
from calc import add, subtract

def test_add():
    assert add(2, 3) == 5
    assert add(3, 4) == 7

def test_subtract():
    assert subtract(5, 2) == 3
    assert subtract(9, 4) == 5

En este caso de prueba, usamos el marco de prueba de pytest y la declaración de afirmación para probar las funciones add() y rest(). Ahora, queremos usar el complemento pytest-html para generar informes de prueba, los pasos son los siguientes:

    1. Instale el complemento pytest-html

Ejecute el siguiente comando en la línea de comando para instalar el complemento pytest-html:

pip install pytest-html

   2. Ejecute pytest y genere un informe de prueba

Ejecute los siguientes comandos en la línea de comando para ejecutar el caso de prueba y generar un informe de prueba:

pytest --html=report.html

    3. Ver el informe de la prueba

Abra el archivo report.html en su navegador para ver el informe de la prueba. El informe de la prueba mostrará el resumen de los resultados de la prueba, los detalles del caso de prueba, el tiempo de ejecución del caso de prueba, los mensajes de error, etc.

5. Interpretación del informe de prueba generado por Pytest

El informe de prueba generado por pytest generalmente contiene las siguientes partes:

    1. Información del encabezado del informe

La información del encabezado del informe generalmente incluye el título del informe, el tiempo de generación, el número total de casos de prueba y el tiempo de ejecución, etc. Por ejemplo:

<h1>Mi informe de prueba</h1>
<p>Generado el 2023-06-17 01:30:41</p>
<p>2 pruebas se ejecutaron en 0,01 segundos</p>
 

 

    2. Resumen de los resultados de las pruebas

El resumen de los resultados de la prueba es una parte importante del informe de la prueba, que puede ayudar a los desarrolladores a comprender rápidamente el estado de la prueba y la cobertura de la prueba. Los resúmenes de los resultados de las pruebas suelen incluir las siguientes secciones:

  • Resultado general: cuántos casos de prueba se ejecutaron en total, cuántos casos de prueba pasaron y cuántos casos de prueba fallaron.
  • Categoría de prueba: los casos de prueba se clasifican según módulos funcionales o tipos de prueba, como prueba unitaria, prueba de integración, prueba de rendimiento, etc.
  • Consumo de tiempo de prueba: el tiempo de ejecución de cada caso de prueba y el tiempo de ejecución total.

Por ejemplo:

Resumen de la prueba
-------------
aprobado: 2
fallido: 0
Tiempo total: 0,01 s

    3. Detalles del caso de prueba

Los detalles del caso de prueba generalmente incluyen el nombre del caso de prueba, el resultado de la ejecución del caso de prueba, el tiempo de ejecución del caso de prueba, información adicional del caso de prueba (si corresponde), mensaje de error, etc. Por ejemplo:

test_add (test_calc.py::test_add)
Pasado en 0.001s

test_subtract (test_calc.py::test_subtract)
Pasado en 0.002s

 

    4. Mensaje de error

Si la ejecución del caso de prueba falla, el informe de prueba mostrará el mensaje de error, la causa del error y la pila de errores para ayudar a los desarrolladores a localizar rápidamente el problema y solucionarlo. Por ejemplo:

test_add (test_calc.py::test_add)
E AssertionError: afirmar agregar (2, 3) == 6
E + donde agregar (2, 3) = 5

6. Resumen

Este artículo presenta cómo usar el complemento pytest-html para generar informes de prueba y proporciona pasos de operación detallados, elementos de configuración y códigos de muestra. Al generar informes de prueba, puede ayudar a los desarrolladores a comprender mejor los resultados de las pruebas y administrar los casos de prueba, mejorando así la calidad del software y la eficiencia del desarrollo. Al mismo tiempo, otras funciones y complementos de pytest también se pueden ampliar para cumplir con diferentes requisitos de prueba.

Supongo que te gusta

Origin blog.csdn.net/weixin_40025666/article/details/131256910
Recomendado
Clasificación