me gustaría utilizar un self.attr
de una clase unittest.TestCase
, sin embargo, parece que no es persistente entre las pruebas:self.attr restablece entre las pruebas en unittest.TestCase
import unittest
class TestNightlife(unittest.TestCase):
_my_param = 0
def test_a(self):
print 'test A = %d' % self._my_param
self._my_param = 1
def test_b(self):
print 'test B = %d' % self._my_param
self._my_param = 2
if __name__ == "__main__":
unittest.main()
Esto da el siguiente resultado:
test A = 0
test B = 0
¿La instancia de unittest.TestCase
cambia entre las ejecuciones de prueba? ¿Por qué?
** motivación: ** Por supuesto que no se puede asumir pedido de prueba, pero a veces una cierta prueba cambia algo en el medio ambiente y otra prueba debe saber si ya tiene ha sido cambiado o no para tomar o abstenerse de ciertas acciones. A veces es más simple y más legible mantener esta información en una variable en lugar de tener funciones auxiliares que inspeccionan informan el estado. Incluso si no está de acuerdo con esta idea, sigue siendo interesante saber qué pasa con el "yo" entre las pruebas, por lo que la pregunta es interesante – Jonathan