Articles of unit testing

Prueba de descubrimiento de Python con doctests, cobertura y paralelismo

… y un pony! No en serio. Estoy buscando una manera de organizar pruebas que “simplemente funciona”. La mayoría de las cosas funcionan, pero no todas las piezas encajan. Así que aquí es lo que quiero: Tener pruebas descubiertas automáticamente. Esto incluye doctests. Tenga en cuenta que la sum de doctests no debe aparecer como […]

Con py.test, la base de datos no se restablece después de LiveServerTestCase

Tengo varias pruebas de Django y normalmente las ejecuto con py.test. Recientemente agregué un nuevo caso de prueba en un nuevo archivo test_selenium.py . Este caso de prueba utiliza las clases LiveServerTestCase y StaticLiveServerTestCase (que es la primera para mí, normalmente solo uso TestCase ). Agregar este nuevo lote de pruebas en este nuevo archivo […]

¿Cómo puedo burlarse de sqlite3.Cursor

He estado sacándome el pelo tratando de averiguar cómo burlarse de la clase sqlite3.Cursor específicamente el método fetchall . Considere el siguiente ejemplo de código import sqlite3 from mock import Mock, patch from nose.tools import assert_false class Foo: def check_name(name): conn = sqlite3.connect(‘temp.db’) c = conn.cursor() c.execute(‘SELECT * FROM foo where name = ?’, name) […]

Simulación de ftplib.FTP para pruebas unitarias de código Python

No sé por qué no lo entiendo, pero quiero usar simulacro en Python para probar que mis funciones están llamando a las funciones en ftplib.FTP correctamente. He simplificado todo y todavía no estoy envolviendo mi cabeza en cómo funciona. Aquí hay un ejemplo simple: import unittest import ftplib from unittest.mock import patch def download_file(hostname, file_path, […]

Pycharm – no se encontraron pruebas?

He estado recibiendo un No se encontraron pruebas error en Pycharm y no entiendo por qué lo point_test.py … esto es lo que tengo para mi point_test.py : import unittest import sys import os sys.path.insert(0, os.path.abspath(‘..’)) from ..point import Point class TestPoint(unittest.TestCase): def setUp(self): pass def xyCheck(self,x,y): point = Point(x,y) self.assertEqual(x,point.x) self.assertEqual(y,point.y) y este point.py […]

¿Por qué no puedo unittest.TestCases ver mis accesorios py.test?

Estoy tratando de usar los accesorios de py.test con mis pruebas de unidad, junto con unittest . He colocado varios dispositivos en un archivo conftest.py en el nivel superior del proyecto (como se describe aquí ), los @pytest.fixture decorado con @pytest.fixture y @pytest.fixture puesto sus nombres como argumentos en las funciones de prueba que los […]

Cómo reemplazar las referencias de acceso a archivos para un módulo bajo prueba

pyfakefs suena muy útil: se desarrolló inicialmente como una modesta implementación falsa de módulos Python centrales para admitir interacciones de sistemas de archivos moderadamente complejas, y se introdujo en todo el territorio de Google … en septiembre de 2006. Desde entonces, ha recibido muchas probado) contribuciones para ampliar su funcionalidad y utilidad, y se utiliza […]

unittest para ninguno tipo en python?

Solo me preguntaba cómo haría para probar una función que no devuelve nada. por ejemplo, digamos que tengo esta función: def is_in(char): my_list = [] my_list.append(char) Y luego si tuviera que probarlo: class TestIsIn(unittest.TestCase): def test_one(self): ”’ Test if one character was added to the list”’ self.assertEqual(self.is_in(‘a’), and this is where I am lost) No […]

Python “ImportError: No hay módulo llamado” Problema

Estoy ejecutando Python 2.6.1 en Windows XP SP3. Mi IDE es PyCharm 1.0-Beta 2 build PY-96.1055. Estoy almacenando mis archivos .py en un directorio llamado “src”; tiene un archivo __init__.py que está vacío, excepto por un atributo ” __author__ ” en la parte superior. Uno de ellos se llama Matrix.py: #!/usr/bin/env python “”” “Core Python […]

¿Cómo agrupo las pruebas unitarias en Django con una granularidad más alta que la aplicación?

En un proyecto de Django, las pruebas unitarias generalmente se organizan por aplicación, mientras que Django proporciona una facilidad para ejecutar todas las pruebas, las pruebas para una sola aplicación, un solo caso de prueba o un solo método de prueba. Sin embargo, encuentro que los casos de prueba en una sola aplicación generalmente pertenecen […]