Pitón

Tutorial de Python Unittest

Tutorial de Python Unittest

La prueba unitaria es un método de prueba utilizado en ingeniería de software para unidades individuales de cualquier código. Los usuarios pueden realizar pruebas individuales para determinar el estado de la fuente y cuánto es adecuado el código para ser utilizado. De esta forma, los usuarios pueden probar la calidad del código.

Las pruebas se realizan una vez que se completa el proceso de desarrollo. Los usuarios también pueden comenzar a probar cuando el script de prueba debe verificarse según los criterios de la prueba. Se espera que los desarrolladores escriban los tipos manuales del código fuente. En general, escribir códigos de prueba unitarios manualmente es una tarea agitada, pero en Python, se hace usando una función incorporada llamada unittest.

Prueba de unidad

La prueba en Python se realiza mediante unittest framework. Las pruebas unitarias también hacen que el código sea seguro y fácil de usar en el futuro. Los usuarios generalmente no pueden predecir estos casos, pero pueden abordarlos fácilmente. Unittest puede ser el módulo completo, una función particular y una interfaz completa (clase / módulo).

Cómo escribir pruebas unitarias para su código?

Para escribir las pruebas unitarias para su código, siempre comience con la unidad más pequeña que se pueda probar de todo su código y luego continúe con otras unidades. De esta manera, comprobará cómo interactúa la unidad elegida más pequeña para construir una prueba de unidad completa.

El marco de pruebas unitarias de Python se formó teniendo en cuenta el Junit de Java. Tiene las mismas características que las mismas, ya que las pruebas unitarias se realizan en otros tipos de idiomas diferentes. El marco de pruebas unitarias en Python ayuda en las pruebas de automatización, el uso compartido de la configuración, la agregación de muchas pruebas en un gran conjunto y las pruebas independientes

Ejemplos:

Ahora, en el ejemplo, estamos verificando el código para encontrar la suma en el código Python usando la función sum (). La respuesta a esta suma debe ser 12, que es correcta.

>>> afirmar suma ([2, 4, 6]) == 12, "Debería ser igual a 12"

Por otro lado, si intentamos escribir un valor de salida incorrecto, cuya suma () es incorrecta, los resultados fallarán. Devolverá un AssertionError. La salida declarada por nosotros es incorrecta, es decir 12, y la salida real debe ser 6, por lo tanto, devolvió este error.

>>> afirmar suma ([2, 2, 2]) == 12, "Debería ser igual a 12"

Ahora, en lugar de probar en el REPL, colocaremos un nuevo archivo de Python y lo nombraremos test_sum.py

>> def testValue_sum ():
afirmar suma ([2, 4, 6]) == 12, "Debería ser igual a 12"
if __name__ == "__main__":
testValue_sum ()
print ("Todo se ha pasado correctamente")

Después de escribir el caso de prueba, puede acceder al directorio que tiene test_sum.py archivo, y luego escriba:

$ python test_sum.py

Producción:

El valor de salida, cuando sea similar al mostrado, aprobará el valor correcto.

Creemos otro archivo para .py para probar la suma. El ejemplo como se muestra en el código y se puede utilizar como muestra copiando:

def testValue_sum ():
afirmar suma ([2, 4, 6]) == 12, "Debería ser igual a 12"
def testValue_sum_tuple ():
afirmar suma ((1, 1, 1)) == 6, "Debería ser igual a 6"
if __name__ == "__main__":
testValue_sum ()
testValue_sum_tuple ()
print ("Todo se ha pasado correctamente")

Esta vez volveremos a nombrar el archivo test_sum.py 

El primer bloque de código es correcto, mientras que el segundo bloque de código es incorrecto y tiene un error, por lo que nuestra salida devolverá el mismo.

Ahora, volveremos al directorio del proyecto, donde guardamos el .archivo py, y luego pruebe el archivo usando el siguiente comando:

$ python test_sum.py

Producción:

Esta vez, dado que el código de entrada tuvo un error, se espera que devuelva el error de afirmación en respuesta.

Ejemplo de uso de unittest:

Los requisitos de Unittest son que los usuarios pueden poner sus pruebas en clases como métodos diferentes, los usuarios pueden usar una serie de métodos de aserción y la clase TestCase se puede usar en lugar de la declaración de aserción.

Los usuarios pueden convertir el ejemplo discutido en la mitad anterior en un caso de prueba de prueba unitaria.

Primero, importe la biblioteca unitest. A continuación, debe crear un TestSum a partir de diferentes clases.

Cree un nuevo archivo para el código que se describe a continuación:

prueba unitaria de importación
clase TestSum (unittest.Caso de prueba):
def testValue_sum (self):
uno mismo.assertEqual (sum ([2, 4, 6]), 12, "Debería ser igual a 12")
def testValue_sum_tuple (self):
uno mismo.asertEqual (sum ((1, 1, 1)), 6, "Debería ser igual a 6")
if __name__ == '__main__':
prueba de unidad.principal()

Una vez que haya ejecutado este comando, la salida tiene un punto. Esto significa éxito y una F significa fracaso.

Entonces, tenemos éxito y otro es un fracaso.

Producción:

Redacción de la primera prueba:

Cree una nueva carpeta de proyecto y luego cree una nueva carpeta, la llamaremos sum_file. Dentro de él, cree un archivo y asígnele el nombre __init__.py.  Haga la carpeta del proyecto como esta:

proyecto/

└── suma_archivo /
└── __init__.py

Entonces necesitas abrir my_sum / __ init__.py y crea una nueva función sum (). Será iterable (una lista, tupla o conjunto) agregar muchos valores:

def suma (arg):
total_ValueCalculated = 0
para val en arg:
total_ValueCalculated + = val
return total_ValueCalculated

A continuación, debe crear un prueba expediente. Comience escribiendo pruebas y cree un archivo de prueba llamado testFile.py. Para importar la aplicación, y debe probarse, coloque el archivo testFile.py encima de su carpeta del paquete. El siguiente será el aspecto general de su directorio:

proyecto/

├── suma_archivo /
│ └── __init__.py
|
└── testFile.py

Como se discutió anteriormente para probar el código, puede usar el siguiente comando en la ventana de terminal / línea de comando:

$ python -m prueba de prueba unitaria

Conclusión

El artículo analiza el proceso de prueba unitaria en Python. Las pruebas son una de las características útiles de la ingeniería de software que es capaz de dividir los códigos en trozos más pequeños y luego probarlos uno por uno. Los usuarios también pueden compilar todas las muestras de prueba / códigos de unidad en una gran colección. Unittest es una función que se utiliza en Python para facilitar el uso de las pruebas.

Cómo descargar y jugar Sid Meier's Civilization VI en Linux
Introducción al juego Civilization 6 es una versión moderna del concepto clásico introducido en la serie de juegos Age of Empires. La idea era bastant...
Cómo instalar y jugar a Doom en Linux
Introducción a Doom La serie Doom se originó en los años 90 después del lanzamiento del Doom original. Fue un éxito instantáneo y, desde ese momento e...
Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...