Gao Fushuai en el mundo de las pruebas unitarias, el marco de Pytest, la enseñanza práctica y el informe de prueba serán así en el futuro ~

1. Generar informe HTML

Hay muchos complementos para que pytest genere HTML, como pytest-html, pytest-testreport, etc. A continuación se presentará cómo utilizar el complemento pytest-testreport para generar informes de prueba HTML.

1.1 Instalar el complemento

pip install pytest-testreport

Nota: Si ha instalado el complemento pytest-html, desinstálelo primero; de lo contrario, puede haber conflictos.

1.2 Introducción al uso de complementos

Cuando use pytest para ejecutar una prueba, si desea usar pytest-testreport para generar un informe de prueba, puede agregar el parámetro --report para especificar el nombre del archivo del informe al ejecutar la prueba, y podrá lograrlo.

Otros parámetros de funcionamiento:

--title : especifica el título del informe

--tester: especifica el probador en el informe

--desc: especifica la descripción del elemento en el informe.

--template: especifica el estilo de la plantilla del informe (1 o 2)

  • Ejecución de línea de comando:
pytest --report=musen.html --title=测试报告 --tester=木森 --desc=项目描述  --template=2

Si desea aprender sobre pruebas automatizadas, aquí le recomiendo un conjunto de videos. Se puede decir que este video es el primer tutorial de prueba de automatización de interfaz en toda la red en la estación B. Al mismo tiempo, la cantidad de usuarios en línea ha aumentado. Llegó a 1000 y hay notas para cobrar y varios Intercambio técnico de Lu Dashen: 798478386     

[Actualizado] La colección más detallada de tutoriales prácticos para pruebas automatizadas de interfaces Python impartidas por la estación B (la última versión de combate real)_哔哩哔哩_bilibili [Actualizado] La colección más detallada de tutoriales prácticos para pruebas automatizadas de Python interfaces enseñadas por la estación B (combate real) La última versión) tiene un total de 200 videos, que incluyen: 1. [Automatización de interfaces] La situación actual del mercado de pruebas de software y los estándares de capacidad de los probadores. , 2. [Automatización de interfaz] Totalmente experto en la biblioteca de solicitudes y la lógica de llamada del método subyacente, 3. [Automatización de interfaz] combate de automatización de interfaz y la aplicación de expresiones regulares y extractores JsonPath, etc. Para videos más interesantes, preste atención a la cuenta UP. https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a 

  • El código se ejecuta usando pytest.main
import pytest

pytest.main(['--report=musen.html',
             '--title=柠檬班上课报告',
             '--tester=测试员',
             '--desc=报告描述信息',
             '--template=2'])
  • El estilo del informe generado es el siguiente

estilo uno

imagen

estilo dos

imagen

Aquí se presentará la generación de informes en formato HTML y luego le diré cómo integrar el informe Allure.

2. Integrar el informe Allure

Si desea integrar informes de Allure en pytest, primero debe descargar Allure y configurar el entorno.

2.1, configuración del entorno atractivo

1. Descargar atractivo:

地址:https://github.com/allure-framework/allure2/releases

Después de descargar y descomprimir

2. Configuración de variables de entorno

Coloque la ruta del directorio bin de la ruta del atractivo después de la descompresión del atractivo en la variable de entorno

imagen

3. Instale el complemento pytest de Allure

pip install allure-pytest 

2.2 Generar informe de atracción

Después de instalar y configurar el entorno de Allure, cuando use pytest para ejecutar el caso de prueba, puede especificar generar Allure para informar a través de los parámetros del complemento Allure.

Parámetros de operación:

--alluredir: especifica la ruta donde se guardan los informes de atracción

  • ejecución de línea de comando
pytest --alluredir=reports

  • El código se ejecuta usando pytest.main

import pytest
pytest.main(['--alluredir=reports'])

2.3 Iniciar servicio de atracción

Ingrese el siguiente comando en la terminal de comandos para iniciar el servicio de atracción

# 命令:allure serve  生成的报告路径allure serve reports

Ejecute el comando anterior, después de que se inicie el servicio Allure, se abrirá automáticamente el navegador y mostrará la página del servicio Allure.

imagen

2.4, métodos incorporados de uso común

Agregar captura de pantalla de error
  • encanto.adjuntar
 def error_save_screenshot(driver,file_path, desc):        # 对当前页web页面进行截图        driver.save_screenshot(file_path)        # 将截图保存到allure报告中        with open(file_path, "rb") as f:            file = f.read()            allure.attach(file, "失败截图", allure.attachment_type.PNG)

Agregue el nombre del caso de uso en el informe.
  • encanto.título
import allure
class TestLogin:
    @allure.title('登录用例')    def test_login(self):        pass

Establecer dinámicamente el nombre del caso de uso en el caso de uso parametrizado
  • encanto.dinamico.titulo
# 用例数据casedatas = [    {'title': '反向用例1','data':"xxx"},    {'title': '反向用例2','data':"xxx"},    {'title': '反向用例3','data':"xxx"}]
class TestLogin:    @pytest.mark.parametrize('item',casedatas )    def test_demo(self, item):      # 动态设置报告中的用例名称        allure.dynamic.title(item['title'])

Agregar descripción de característica en el informe
  • encanto.historia
@allure.story('登录功能')class TestLogin:
    @allure.title('登录用例')    def test_login(self):        pass
Agregue el nombre del paquete en el informe.
  • encanto.suite
@allure.suite('登录测试套件')class TestLogin:    @allure.title('登录用例')    def test_login(self):        pass

Supongo que te gusta

Origin blog.csdn.net/m0_73409141/article/details/132233516
Recomendado
Clasificación