Error de atributo en Python
-
20-09-2019 - |
Pregunta
Estoy tratando de agregar un atributo más unido a un objeto en Python
class Boy:
def run(self, args):
print("Hello")
class BoyTest(unittest.TestCase)
def test(self)
self.assertEqual('2' , '2')
def self_test():
suite = unittest.TestSuite()
loader = unittest.TestLoader()
suite.addTest(loader.loadTestsFromTestCase(Boy.BoyTest))
return suite
Sin embargo, sigo obteniendo "AttributeError: class Boy has no attribute 'BoyTest'"
Siempre que llamo self_test()
. ¿Por qué?
Solución
Como el argumento de loadTestsFromTestCase
, estás tratando de acceder Boy.BoyTest
, es decir, el BoyTest
Atributo del objeto de clase Boy
, que simplemente no existe, como le dice el mensaje de error. ¿Por qué no usas? BoyTest
en su lugar?
Otros consejos
Como Alex ha declarado que estás tratando de usar boytest como atributo de Boy:
class Boy:
def run(self, args):
print("Hello")
class BoyTest(unittest.TestCase)
def test(self)
self.assertEqual('2' , '2')
def self_test():
suite = unittest.TestSuite()
loader = unittest.TestLoader()
suite.addTest(loader.loadTestsFromTestCase(BoyTest))
return suite
Tenga en cuenta el cambio:
suite.addTest(loader.loadTestsFromTestCase(Boy.BoyTest))
a:
suite.addTest(loader.loadTestsFromTestCase(BoyTest))
¿Esto resuelve tu problema?
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow