Red de conocimientos turísticos - Conocimientos sobre calendario chino - Herramientas de prueba para pruebas unitarias

Herramientas de prueba para pruebas unitarias

Ahora presentaremos las herramientas de prueba unitaria por lenguaje de programación. CppUnit

El primero es CppUnit, que es el creador de las herramientas de prueba unitaria C y un marco de prueba unitario gratuito y de código abierto. Dado que muchos expertos han escrito muchos artículos muy buenos sobre CppUnit, ya no soy feo. Se recomienda a los amigos que quieran comprender CppUnit que lean el "Marco de prueba de CppUnit para principiantes" producido por Cpluser. El artículo también proporciona la dirección de descarga de CppUnit.

Prueba C

A continuación, presentaremos el producto C Test de Parasoft. [C Test es una potente herramienta automatizada de prueba a nivel de unidad C/C que puede probar automáticamente cualquier función o clase de C/C, generar automáticamente casos de prueba, funciones de controlador de prueba o funciones auxiliares y se puede utilizar con extrema facilidad en un entorno automatizado. Logre rápidamente una cobertura de prueba de 100 unidades]. El texto en [] está citado de la página web de Huatang. Originalmente quería escribir un texto introductorio sobre C Test, pero descubrí que no podía ir más allá de la introducción en la página web de Huatang, así que me ahorré la molestia. Si desea obtener más información sobre C Test, le recomiendo visitar el sitio web de la empresa. Huatang es agente de C Test, puedes encontrarlos si deseas comprar o solicitar una cotización o una versión de prueba.

Visual Unit

Finalmente, presentamos Visual Unit, conocida como VU. Se dice que ha solicitado múltiples patentes y tiene varias. de tecnologías innovadoras, pero sólo importa si son útiles y fáciles de usar. [Genere automáticamente código de prueba, cree rápidamente casos de prueba funcionales, el comportamiento del programa es claro de un vistazo, integridad de prueba extremadamente alta, cobertura de caja blanca completa de manera efectiva, solución rápida de problemas, depuración eficiente e informes de prueba detallados]. El texto dentro de [] se toma de la página web del desarrollador de VU. Los requisitos de prueba mencionados anteriormente: completar pruebas funcionales, completar la cobertura de declaraciones, cobertura de condiciones, cobertura de sucursales y cobertura de rutas se pueden lograr fácilmente usando VU. Otro punto que vale la pena mencionar es que el uso de VU también puede mejorar la eficiencia de la codificación. El tiempo de depuración se puede reducir considerablemente mientras se completan las pruebas unitarias. Olvídalo, no quiero decir más. Todavía estoy interesado en mostrar teorías e introducir experiencias, porque esto puede satisfacer mi vanidad de ser profesor, pero presentar herramientas me parece aburrido, después de todo, las herramientas no son fáciles de usar. e inapropiado. No lo sabrás hasta que lo pruebes. Es mejor ir al sitio web del desarrollador y echar un vistazo. Puedes descargar la versión de demostración y el material didáctico de demostración.

gtest

El marco de prueba gtest está diseñado para escribir pruebas C en diferentes plataformas (Linux, Mac OS X, Windows, Cygwin, Windows CE y Symbian). Es un marco de prueba basado en la arquitectura xUnit que admite el descubrimiento automático de pruebas, un rico conjunto de aserciones, aserciones definidas por el usuario, pruebas de muerte, fallas fatales y no fatales, pruebas de tipo parametrizado, varias opciones para ejecutar pruebas y pruebas XML. informes. Los amigos que necesiten saber más pueden consultar el artículo "Jugar con la serie gtest de Google Unit Test Framework". JUnit

JUnit es la herramienta de pruebas unitarias más conocida en la comunidad Java. Nació en 1997 y fue desarrollado conjuntamente por Erich Gamma y Kent Beck ***. Erich Gamma es uno de los autores del libro clásico Design Patterns: Kent Beck es un experto y pionero de la Programación Extrema (XP). --JUnit-- es un marco de pruebas Java de origen de desarrollo para escribir y ejecutar pruebas repetibles. Es un ejemplo para el sistema marco de pruebas unitarias xUnit (para el lenguaje Java). Se utiliza principalmente para pruebas de caja blanca y pruebas de regresión.

Los beneficios de JUnit y los principios de escritura de las pruebas unitarias de JUnit:

Beneficios: el código de prueba y el código de producto se pueden separar; se puede aplicar un tipo de código de prueba con menos cambios. tipo de prueba; fácil de integrar en el proceso de construcción del probador, JUnit se puede combinar con Ant para lograr un desarrollo incremental; JUnit es código fuente abierto, que se puede usar para desarrollo secundario;

Principios de redacción: es para simplificar la preparación de pruebas, esta simplificación incluye el aprendizaje del marco de pruebas y la preparación de unidades de prueba reales para mantener la persistencia de las unidades de prueba; /p>

Ayuda para el uso de JUnit

1. Versión Junit3.x, generalmente usamos la versión junit3.x. x, usualmente usamos junit 3.8

(1), usando junit3. Los principios que deben seguirse son:

A público

B. void

C. Sin parámetros de método

D. El nombre del método debe ser Comenzar con prueba

(3) Los diferentes casos de prueba deben permanecer completamente independientes y no pueden tener cualquier correlación.

(4), debemos dominar el orden de los métodos de prueba y no podemos confiar en el orden de ejecución de los métodos de prueba en sí.

domo:

clase pública TestMyNumber extiende TestCase {

MyNumber privado myNumber;

PruebaMyNumber público (nombre de cadena) {

super(nombre);

}

/// Llamado antes de ejecutar cada método de prueba

@Override

public void setUp() lanza una excepción {

/// System.out.out.(Bienvenido a las pruebas unitarias con Junit...);

myNumber = new MyNumber(); /p>

}

// Se llama después de ejecutar cada método de prueba

@Override

public void tearDown() lanza una excepción {

p>

// System.out.println(Fin de la prueba unitaria de Junit...);

}

public void testDivideByZero() {

Throwable te = null;

intenta {

myNumber.divide(6, 0);

Assert.fail(prueba fallida);

} captura (Excepción e) {

e.printStackTrace();

te = e;

}

Assert .assertEquals(Exception.class, te.getClass());

Assert.assertEquals(Exception.class, te.getClass());

Assert.assertEquals(Exception. class , te.getClass())assertEquals(el divisor no puede ser 0, te.getMessage()

}

}

}

2. versión junit4.x

(1) Cuando use la versión junit4.x para pruebas unitarias, no use la clase de prueba para heredar la clase principal TestCase, porque junit4..x presenta completamente Anotación para ejecutar nuestras pruebas escritas.

(2) En la versión Junit 4.x, anotaciones citadas y pruebas unitarias

(3) En la versión Junit 4.x, nuestras anotaciones comúnmente utilizadas:

A. Anotación @Before: Igual que la función del método setUp () de junit3.x, ejecutada antes de cada método de prueba

B. Anotación @After: Igual que la función del método tearDown() en junit3.x, ejecutada después de cada método de prueba;

Anotación C.@BeforeClass: ejecutada antes de todos los métodos

D. Anotación @AfterClass: ejecutada después de todos los métodos;

E.@Test(test): ejecutada antes de todos los métodos;

E.@Test(test): ejecutada después de Ejecutada después de todos los métodos ;

E.@Test(test): Ejecutado antes de todos los métodos;

E.@Test(test): Ejecutado antes de todos los métodos;

F.

E.@Test(timeout = xxx) Nota: configure el método de prueba actual para que se ejecute dentro de un período de tiempo determinado; de lo contrario, se devolverá un error;

F.@Test (esperado = Exception.class) Anotación: establece el método que se probará para ver si se generará una excepción. El tipo de excepción lanzada es Exception.class;

G.@Ignorar anotación: anote el método o clase de prueba y el método o clase anotado no se ejecutará.

domo:

paquete com.an.junit;

importar org.junit.Assert.* estático;

importar org. junit.AfterClass; myNumber.divide(6, 0);

fail(error de prueba);

}

public static void main(String[] args ) {

}

}

Amigos que estén interesados, también pueden ir al blog de Ann's DIY Studio para discutir juntos.

JUnit-addons

Algunas funciones adicionales de JUnit, como establecer y obtener el valor de la propiedad privada del objeto bajo prueba, llamar al método privado del objeto bajo prueba, etc.

Clases de uso común: junitx.util.PrivateAccessor

Marco de pruebas de Spring

Puedes probar aplicaciones basadas en Spring y ensamblar automáticamente los componentes necesarios a través de archivos de configuración y anotaciones. objeto de prueba unitaria.

Proporciona algunos objetos simulados J2EE comunes, como la clase HttpSession Mock.

Capaz de admitir la reversión automática de la base de datos, evitar que la base de datos (insertar, eliminar, etc.) se repita durante las pruebas unitarias, evitar que se modifique el estado de la base de datos, etc.

DJUnit

Genera automáticamente objetos simulados a través del código, eliminando la necesidad de escribir manualmente varias clases simuladas.

Además, su complemento Eclipse también puede realizar pruebas de cobertura y estadísticas de sucursales.

EasyMock

Utilizado junto con DJUnit, también puedes simular automáticamente clases y métodos no relacionados con el objeto de prueba a través de la programación.