Articles of prueba de unidad de

Marco de prueba de Django con servidor de backend de correo electrónico basado en archivo

He formulado casos de prueba en el marco de Django. Caso de uso: estoy usando la API que registra al usuario enviándoles un correo electrónico y cuando hacen clic en el enlace proporcionado en el correo electrónico, su cuenta se activa. En mi settings.py estoy usando EMAIL_FILE_PATH =’django.core.mail.backends.filebased.EmailBackend’ que apunta al directorio local. Al ejecutar […]

¿Cuál es la diferencia entre assertEqual y assertIs (assertIs se introdujo en Python 2.7)?

Referencia: http://docs.python.org/library/unittest.html#assert-methods assertEqual(a, b) # checks that a == b assertIs(a, b) # checks that a is b <—- whatever that means????

¿Cómo usar la clase TextTestRunner del módulo de prueba de unidad de Python en el modo failfast?

Todo lo que encontré en la documentación del módulo unittest es una descripción del TextTestRunner de TextTestRunner y el siguiente código de ejemplo usando su método run() : unittest.TextTestRunner(verbosity=2).run(suite) Me gustaría saber cómo puedo usar TextTestRunner en modo failfast.

¿Es esta una forma adecuada de probar la salida estándar con Python 3 unittest?

Supongamos que tengo un archivo de envío, fileFromStudent.py , y lo único que hay en él es: print(“hello world”) Me gustaría probar la salida estándar para ver si el estudiante ha escrito correctamente la statement impresa. Según lo que he leído, he podido crear el siguiente código: from io import StringIO from unittest.mock import patch […]

Orden de ejecución en prueba de unidad de python

Necesito establecer un orden de ejecución para mis pruebas, porque necesito que se verifiquen algunos datos antes que otros ¿Es posible hacer un pedido? class OneTestCase(unittest.TestCase): def setUp(self): # something to do def test_login (self): # first test pass def test_other (self): # any order after test_login def test_othermore (self): # any order after test_login […]

Python unittest: no se puede llamar prueba decorada

Tengo una suite de pruebas bastante grande y decoré algunas de las funciones test_ *. Ahora no puedo llamarlos por ./test.py MySqlTestCase.test_foo_double , python3.2 se queja de que: ValueError: no such test method in : result . Mi código de decorador se ve así: def procedure_test(procedure_name, arguments_count, returns): ”’Decorator for procedure tests, that simplifies testing […]

¿Por qué python no ejecuta nada después de que se ejecuta ‘unittest.main ()’?

Así que digamos que tengo lo siguiente: import unittest class MyTests(unittest.TestCase): def test001(self): print ‘This is test001’ def test002(self): print ‘This is test002’ if __name__ == ‘__main__’: unittest.main() print ‘Done’ Y la salida es: >> This is test001 >> This is test002 >> ———————————————————————- >> Ran 2 tests in 0.001s >> OK Y me preguntaba […]

¿Cuál es la forma correcta de organizar las pruebas de unidad de Python en suites?

Tengo algunas clases de casos de prueba organizados en directorios. foo_tests foo_tests1.py foo_tests2.py … bar_tests bar_tests1.py … Los casos de prueba parecen: foo_tests1.py: import unittest class FooTestsOne(unittest.TestCase): def test_1(): assert(1=1) def test_2(): #… ¿Cómo organiza las suites de prueba de clases de casos de prueba como esta? Hay instalaciones en unittest para los objetos TestLoaders […]

Probar si una clase es heredada de otro

Esta pregunta está más relacionada con Python que con Django. Quiero probar, escriba una prueba para esta función que estoy usando para obtener un formulario Django dinámicamente con los campos que establezco. def quiz_form_factory(question): properties = { ‘question’: forms.IntegerField(widget=forms.HiddenInput, initial=question.id), ‘answers’: forms.ModelChoiceField(queryset=question.answers_set) } return type(‘QuizForm’, (forms.Form,), properties) Quiero probar si la clase QuizForm devuelta se […]

Prueba de unidad de comportamiento con parche (matraz)

Estoy tratando de patch métodos en mi api de matraz, pero parece que la llamada al método no se está reemplazando. ¿ app.test_client() hace algo bajo el capó que me estoy perdiendo? Por ejemplo si corro @patch(‘k.stats.mstats’) def test_ps(self, mstats): mstats.return_value = (1, 2, 3) rv = self.app.get(‘/ps/’) y corro a través del depurador hasta […]