Bienvenido a la Comunidad de Treehouse

¿Quieres colaborar en errores de código? ¿Tienes errores que necesitan comentarios? ¿Buscas un par de ojos adicionales en tu último proyecto? aquí.

¿Buscas aprender algo nuevo?

Treehouse ofrece una prueba gratuita de siete días para estudiantes nuevos. Obtén acceso a miles de horas de contenido y únete a miles de

Inicia tu prueba gratuita

Python Pruebas de Python Sé Asertivo assertTrue y assertFalse

Tarea de desafío 2 de 2

Tarea de desafío 2 de 2

¡Excelente! Ahora usemos el opuesto de assertTrue que es assertFalse. Completa test_bad_palindrome con la aserción assertFalse y un palíndromo incorrecto.

tests.py
import unittest

from string_fun import is_palindrome

class PalindromeTestCase(unittest.TestCase): 
      def test_bad_palindrome(self): 
          self.assertFalse(is_palindrome('tacocat'))
string_fun.py
def is_palindrome(yarn):
    """Devuelve si una cadena es un palíndromo o no.

    Un palíndromo es una palabra/frase que es igual en
    ambas direcciones.
    """
    return yarn == yarn[::-1]

5 respuestas

tienes que pasar self como un atributo
def test_bad_palindrome(self):

Hola Sympathy,

Para assertFalse, estamos aseverando que el valor pasado a is_palindrome es, de hecho, no un palíndromo. Por ejemplo, al llamar is_palindrome("taco") devolverá falso.

Además, necesitas mantener el código para test_good_palindrome.

class PalindromeTestCase(unittest.TestCase):
  def test_good_palindrome(self):
    self.assertTrue(is_palindrome(tacocat))

  def test_bad_palindrome(self):
    self.assertFalse() # arregla esta línea

def test_bad_palindrome(self):

esto funcionó para mí

class PalindromeTestCase(unittest.TestCase):

def test_bad_palindrome(self):

clase PalindromeTestCase(unittest.TestCase):