modo de ejecución del caso de uso de pytest

1. Ejecutar en modo de línea de comandos

Ejecutar todos los casos de uso en un directorio determinado y todos los casos de uso que cumplan con la especificación

       Ingrese al directorio correspondiente y ejecute pytest directamente; por ejemplo, debe ejecutar todos los casos de uso en casos de prueba; puede ingresar al directorio de casos de prueba; luego ejecute pytest

       Ingrese al directorio de nivel superior del directorio correspondiente y ejecute el nombre del directorio pytest/ ; ; Por ejemplo, debe ejecutar todos los casos de uso en casos de prueba; puede estar en el directorio estudio_proyecto; y luego ejecute pytest casos de prueba/

Ejecutar el caso de uso bajo un determinado archivo py

       pytest script nombre.py

Ejecutar una función en el módulo .py

pytest test_mod.py::Clase de prueba

Ejecutar una función en el módulo .py

pytest test_mod.py::test_func

En el módulo run.py, cierta clase de prueba

pytest test_mod.py::Clase de prueba

Ejecute el módulo .py, pruebe un método en la clase

pytest test_mod.py::TestClass::test_method

Varias combinaciones

pytest test_mod1.py::TestClass::test_method test_mod2.py

marcar correr

pytest -m login ejecuta el caso de uso marcado como inicio de sesión

Dos, el método principal se ejecuta

En general, especifique la ruta y los parámetros que deben ejecutarse en el directorio raíz del proyecto

3. A través del archivo de configuración global pytest.ini

¿Dónde se debe colocar pytest.ini? Simplemente colóquelo en el directorio raíz del proyecto, no se meta, no se meta con otros nombres

Elementos de configuración comunes

marcas

Función: El decorador @pytest.mark.webtest se agrega al caso de prueba.Si no se agrega la opción de marcas, se informarán las advertencias.

Formato: lista tipo lista

Escribiendo:

# mark

markers =

    smoke:冒烟用例

     order: 订单用例

    product: 商品用例

Cambiar las reglas de recopilación de casos de prueba

Reglas de recopilación de casos de prueba predeterminadas de Pytest

  •  Los nombres de archivo comienzan con archivos test_*.py y *_test.py
  •  funciones que comienzan con test_
  •  Una clase que comienza con prueba no puede contener un método __init__
  •  Métodos en clases que comienzan con test_

Podemos modificar o agregar esta regla de recopilación de casos de uso, por supuesto, se recomienda agregarla a la regla original, de la siguiente manera:

rutas de prueba=casos de prueba/estudio_prueba/

python_files =test_*  *_test  test*

python_classes =Test*   test*

python_functions =test_*  test*

Observaciones: testpaths=testcases/test_study/ Si pytest se ejecuta en el directorio raíz del proyecto, el directorio de ejecución actual se usará como la ruta relativa y se ejecutarán los archivos bajo test_study bajo los casos de prueba en el directorio raíz; otros no será ejecutado

Por ejemplo:

 producción:

adopta

Función: el parámetro addopts puede cambiar las opciones predeterminadas de la línea de comandos. Cuando ingresamos un montón de instrucciones en cmd para ejecutar el caso de uso, podemos usar este parámetro en su lugar, ahorrando el trabajo repetitivo de escribir comandos.

# 例如命令行参数,失败重跑两次,一共运行两次,生成测试报告

addopts = -v --reruns=1 --count=2 --html=reports.html --self-contained-html -n=auto

log_cli

Rol: registro de salida en tiempo real de la consola

Formato: log_cli=verdadero o falso (predeterminado), o log_cli=1 o 0

 

Supongo que te gusta

Origin blog.csdn.net/MXB1220/article/details/132214618
Recomendado
Clasificación