2011-02-07 18 views
13

¿Cómo puedo obtener PHPUnit para ejecutar mi PHPT test cases e integrar la pasa/no pasa de estado en las métricas generales? Ya estoy al tanto de cómo ejecutar estas pruebas usando run-phpt desde la línea de comandos, pero yo quiero correr desde dentro PHPUnit con mis otras pruebas.Integrar casos de prueba HPTP con PHPUnit

Soy consciente de que la PHPUnit_Extensions_PhptTestCase existe pero no se han encontrado muestras de cómo usarlo.

+0

@DavidHarkness Gracias por la limpieza. Lee mucho mejor ahora. Muy apreciado – edorian

Respuesta

5

Si bien el punto principal de este blog post about testing file uploads es describir cómo escribir pruebas de PHPT, muestra cómo integrarlos en PHPUnit al final de la publicación. En resumen, pasa la ruta absoluta al archivo .phpt al constructor padre.

<?php 
require_once 'PHPUnit/Extensions/PhptTestCase.php'; 

class UploadExampleTest extends PHPUnit_Extensions_PhptTestCase { 
    public function __construct() { 
     parent::__construct(__DIR__ . '/upload-example.phpt'); 
    } 
} 

Como alternativa, puede utilizar la clase PHPUnit_Extensions_PhptTestSuite, que tiene un directorio como su primer argumento del constructor y luego busca todos los archivos * .phpt dentro de este directorio.

+1

Eso significa que cada caso de prueba requiere un archivo de clase duro codificado ** y ** archivo de prueba para él. Vaya, eso es inútil ... – ircmaxell

+0

estoy totalmente olvidado de MAPI s'post aun así que fue la razón por la que empecé a preocuparse por el hiperparatiroidismo primario nuevo. Gracias ! – edorian

+6

@ircmaxell: "De forma alternativa, puede utilizar la clase PHPUnit_Extensions_PhptTestSuite, que tiene un directorio como su primer argumento del constructor y luego busca todos los archivos * .phpt dentro de este directorio" :) – edorian

3

En su configuración XML PHPUnit, se puede añadir un banco de pruebas nombrado hiperparatiroidismo primario (o cualquier otro nombre) y el punto en el directorio donde ha colocado los archivos .phpt con el sufijo conjunto de ".phpt". PHPUnit ejecutará entonces todos los archivos de los ensayos PHPT de ese directorio:

<testsuites> 
    <testsuite name="Main Test Suite"> 
     <directory>test</directory> 
    </testsuite> 
    <testsuite name="PHPT Test Suite"> 
     <directory suffix=".phpt">test/phpt</directory> 
    </testsuite> 
</testsuites> 

En este ejemplo, el directorio contiene los archivos de test/phpt.phpt.

Información sobre el formato de cómo se estructuran .phpt pruebas escritas y está disponible en profundidad a:

Cuestiones relacionadas