Bienvenido de nuevo.
Continuemos con nuestras pruebas unitarias ahora.
Una cosa que noté aquí es que cuando miramos la documentación, en realidad tenemos una inserción es instance.
Entonces, en realidad, en lugar de decir que Asatru solo use, la aserción es instancia, que le damos a A
y B nuevamente, todos estos métodos de prueba, no hay uno correcto.
Puede utilizar la que desee como herramienta para mejorar su código.
Entonces, en mi caso, cambiemos esto para afirmar la instancia y solucionarlo.
Así, solo un poco más limpio, veamos si funciona, está bien.
Todo sigue bien.
Bien, intentemos descifrar nuestro código de nuevo.
Entonces todo se ve bien.
Pero, ¿y si hacemos algo diferente?
¿Qué pasa si lo hacemos, digamos, en otra prueba y también decimos probar hacer cosas?
Por lo general, desea nombrar mejor estas funciones.
Entonces son más descriptivos.
Pero en nuestro caso, esto está bien.
Solo para que podamos ver cómo funcionan esta vez.
Hagamos que el parámetro de prueba sea igual.
¿Qué tal ninguno?
Entonces, si ejecuto esto, ejecutemos este código nuevamente.
Y, por cierto, es posible que notes aquí cómo estoy copiando código en una prueba y podrías
pensar, bueno, ¿podemos simplificar esto?
Y no repetirnos.
Y puede hacer eso totalmente y hacer las cosas mucho más fáciles.
Pero cuando se trata de pruebas, debido a que no entran en producción y esto es
solo para fines de desarrollo, realmente desea tener pruebas que sean fáciles de leer para que otras personas entiendan
sus pruebas, porque cuando se trata de pruebas, legibilidad es muy, muy importante.
No nos importa tanto no repetirnos y hacer que nuestro código sea eficiente, agradable y pequeño.
Así que me gusta escribir pruebas que sean realmente descriptivas, realmente obvias.
Muy bien, aquí, digamos autodidacta afirmar igual y hmm, ¿qué debería ser esto?
Bueno, en este caso, espero un error de valor, así que hagamos esto.
Espero que el resultado sea un valor para guardar y ejecutar mi prueba.
Muy bien, aparece un error, dice que este es un error de tipo en el argumento, debe ser una cadena.
Y le estoy dando un no tipo.
Muy bien, esto no lo está manejando correctamente porque simplemente no funciona con el ENT, obtenemos un error
de tipo.
Entonces, ¿cómo podemos solucionar esto?
Huckabee lo ajusta en caso de que obtengamos un no tipo en el parámetro.
Bueno, en primer lugar, démosle un parámetro predeterminado, digamos que el parámetro predeterminado es cero si ejecuto
esto.
De nuevo.
Todavía tengo el aire.
Bien, todavía no lo hemos arreglado.
El argumento debe ser estricto.
¿Un objeto tipo compra o un tipo no?
De acuerdo, todavía no estamos comprobando el tipo de niñera.
Entonces, otra cosa que podemos hacer es decir.
Si.
No.
Entonces estamos verificando si tenemos el valor numérico.
Porque recuerde, esto se convertirá de forma predeterminada en verdadero si tiene algún tipo de números o, bueno, cualquier valor, pero
si no es un tipo, entrará en vigor.
Entonces aquí, si no, podemos decir que devuelva esto.
De lo contrario, de lo contrario, volveremos.
Por favor.
Ingresar número.
Así que voy a decir esto y ahora cambiar esto, porque ahora deberíamos esperar por favor ingrese un número en
mi prueba y voy a decir afirmar igual.
Ese resultado.
Va a ser por favor ingrese No.
Si ahora estuviera en mi prueba, aclaremos esto.
Oh, parece que me están ejecutando dos pruebas en cero segundos, pero tenemos tres pruebas, y eso es porque.
Ves aquí que nombré al mío de la misma manera.
Recuerde, si le da el mismo nombre a la cosa, bueno, solo ejecutará una de ellas.
Así que asegúrese de que todos los nombres de las pruebas sean únicos.
Así que voy a ejecutar esto.
De acuerdo, ejecuté tres pruebas y todo está funcionando bien.
Muy muy genial.
Entonces puede ver aquí cómo pasamos de una función muy simple y comenzamos a detectar
estos errores y comenzamos a darnos cuenta de que nuestra función era demasiado simplista, que si recibíamos una entrada incorrecta.
Igual que.
¿Una cadena o un no tipo?
Bueno, tan pronto como hicimos eso, nuestra función falló.
Entonces, al usar pruebas y probar y romper cosas, pude mejorar esta función.
Es más duradero y ahora funciona mucho mejor en producción.
Derecha.
Y este es el poder de las pruebas.
Nos permite comprobar si hay errores que hayamos cometido porque tal vez no hubiéramos pensado en hacer
algo como esto inicialmente.
Pero al escribir pruebas junto con nuestro código, pudimos mejorar la función.
Ahora, una última cosa que quiero agregar.
Agreguemos otra de las pruebas y digamos que esto sirve para qué pasa si el parámetro de prueba es solo
una cadena vacía.
Deberíamos ingresar un número, así que si ejecuté esto.
Muy bien, cuatro pruebas están pasando, por lo que parece que nuestro código está funcionando bien.
Ahora, para terminar aquí, solo quiero señalar algunas cosas.
Estoy pidiendo aquí una prueba unitaria en Maine, pero esto no tiene nada que ver con el real.
Expediente.
Eso lo escribimos, que es el archivo principal, si digamos que le cambio el nombre, así que vayamos a mi escritorio.
Y diga, quiero cambiar esto a.
Guión, DCPI.
Abramos ahora este, mi caso con texto sublime.
Regresemos aquí.
Entonces ves aquí que eso significa que PI está bien ya no existe.
Me está pidiendo que salve.
Entonces este es un archivo completamente diferente.
Ahora, si hago un script aquí y simplemente cambio todas las instancias a script.
Si guardo esto y ahora corro.
Esta prueba unitaria todavía funciona, lo que significa que simplemente dice, oye, ejecuta todas las pruebas aquí.
Ahora, una cosa, y esta es una práctica común de la que hemos hablado antes, es porque
quiere decir ejecutar este otoño si este es el archivo principal que se está ejecutando, porque realmente no queremos importar Tessmann ni
nada parecido esto en otros archivos.
Estos son archivos individuales que solo deben ejecutarse cuando ejecutamos nuestras pruebas.
Así que solo puedo decir si el subrayado es el nombre del subrayado.
Igual.
Subrayado, subrayado, principal.
Luego ejecute este fragmento de código.
Así que ahora si guardo esto y corro.
Ahí tienes.
Todo sigue funcionando, pero ahora me aseguro de que este es un archivo de prueba y solo voy a ejecutar este código si
es el archivo que se está ejecutando, si es el archivo principal que se está ejecutando.
Por lo tanto, esta es una forma estándar de realizar la prueba con el módulo de prueba unitaria.
Tomemos un descanso y hablemos un poco más sobre las pruebas en el siguiente video.