Fixtures

Software captura de pantalla:
Fixtures
Detalles de software:
Versión: 0.3.14
Fecha de carga: 14 Apr 15
Promotor: Robert Collins
Licencia: Libre
Popularidad: 17

Rating: 5.0/5 (Total Votes: 1)

Accesorios es una herramienta que define un contrato de Python para la lógica estatal / soporte reutilizable, principalmente para la unidad de pruebas & nbsp;. Helper y la lógica adaptación se incluye para que sea fácil de escribir sus propias luminarias que utilizan el contrato accesorios. Se proporciona código de unión que hace uso de accesorios que cumplan el contrato Fixtures en unittest casos de prueba compatibles fácil y sencillo.
¿Por qué Calendario
Standard Python unittest.py ofrece ningún método obvio para hacer y reutilización estado se requieran en un caso de prueba que no sea mediante la adición de un método en la clase de prueba. Este escalas mal - funciones auxiliares complejos propogating una jerarquía de clase de prueba es un patrón regular cuando se hace esto. Burlándose mientras que una gran herramienta de sí mismo, no a evitar esto (y ayudantes para burlarse de las cosas complejas pueden acumular en la misma forma si se colocan en la clase de prueba).
Mediante la definición de un contrato uniforme, donde los ayudantes no tienen dependencia de la clase de prueba que permitirá que todas las actividades regulares de higiene código se lleven a cabo sin la influencia distorsionante de estar en una jerarquía de clases que está modelando una cosa totalmente diferente - que es lo que los ayudantes en un TestCase sufrir de.
Acerca de Calendario
Una luminaria representa algún estado. Cada accesorio tiene atributos en ella que son específicos para el accesorio. Por ejemplo, un accesorio que representa un directorio que puede ser utilizado para los archivos temporales podría tener un "camino" atributo.
Creación Calendario
Mínimamente, subclase Fixture, definir Setup para inicializar su estado y programar una limpieza para cuando cleanUp se llama y ya está:
>>> Unittest importación
>>> accesorios de importación
>>> NoddyFixture clase (fixtures.Fixture):
... Def Configuración (self):
... Super (NoddyFixture, auto) .SETUP ()
... Self.frobnozzle = 42
... Self.addCleanup (delattr, auto, 'frobnozzle')
Esto iniciará frobnozzle cuando la instalación se llama, y ​​cuando la limpieza es llamado deshacerse del atributo frobnozzle.
Hay un ayudante para la adaptación de un par de función o función en Fixtures. pone el resultado de la función en fn_result:
>>> Os.path importación
>>> Shutil importación
>>> Tempfile importación
>>> Setup_function def ():
... Volver tempfile.mkdtemp ()
>>> Def teardown_function (accesorio):
... Shutil.rmtree (accesorio)
>>> Accesorio = fixtures.FunctionFixture (setup_function, teardown_function)
>>> Fixture.setUp ()
>>> Os.path.isdir impresión (fixture.fn_result)
Verdadero
>>> Fixture.cleanUp ()
La API Fixture
El ejemplo anterior presenta algunos de los API Fixture. Con el fin de ser capaz de limpiar después de una luminaria se ha utilizado, todos los accesorios de definir un método de limpieza que debe ser llamada cuando un aparato está acabado con.
Debido a su agradable para poder construir un conjunto particular de accesorios relacionados antes de usarlos, los accesorios también tienen definir un método de configuración que se debe llamar antes de intentar utilizarlos.
Un deseo común con los accesorios que son caros de crear es reutilizarlos en muchos casos de prueba; para apoyar esta el Fixture base define también un restablecimiento que llama self.cleanUp (); self.setUp (). Accesorios que pueden hacer de manera más eficiente a sí mismos reutilizable debe reemplazar este método. Esto se puede utilizar con el estado de múltiples pruebas a través de cosas como testresources, setUpClass o setUpModule.
Cuando se utiliza un aparato con una prueba que puede llamar de forma manual los métodos de configuración y limpieza. Más conveniente aunque es usar el pegamento incluido desde fixtures.TestWithFixtures que proporciona un mixin definir useFixture (caso camello, porque es en todo caso unittest camello) método. Se llamará a Configuración en el aparato, llame self.addCleanup (accesorio) para programar una limpieza, y devolver el aparato. Esto permite una escritura:
>>> testtools importación
>>> Unittest importación
Tenga en cuenta que utilizamos testtools testcase aquí ya que tenemos que garantizar un método TestCase.addCleanup.
& Nbsp; >>> clase NoddyTest (testtools.TestCase, fixtures.TestWithFixtures):
& Nbsp; ... def test_example (self):
& Nbsp; ... fixture = self.useFixture (NoddyFixture ())
& Nbsp; ... self.assertEqual (42, fixture.frobnozzle)
& Nbsp; >>> resultado = unittest.TestResult ()
& Nbsp;. >>> _ = NoddyTest ('test_example') ejecutar (resultado)
& Nbsp; >>> imprimir result.wasSuccessful ()
& Nbsp; El verdadero
Fixtures implementan el protocolo de contexto, por lo que también puede utilizar un accesorio como un gestor de contexto:
>>> Con fixtures.FunctionFixture (setup_function, teardown_function) como accesorio:
... Os.path.isdir impresión (fixture.fn_result)
Verdadero

Requisitos :

  • Python

Programas parecidos

AceUnit
AceUnit

2 Jun 15

JUnit PDF Report
JUnit PDF Report

2 Jun 15

Tarn
Tarn

14 Apr 15

Otro software de desarrollador Robert Collins

Comentarios a la Fixtures

Comentarios que no se encuentran
Añadir comentario
A su vez en las imágenes!