Inicio rápido de PHPunit

1. Obtención de PHPunit
Para obtener PHPUnit, la forma más sencilla es descargar el Archivo PHP (PHAR) de PHPUnit, que agrupa todos los componentes necesarios (y algunos componentes opcionales) requeridos por PHPUnit en un solo archivo:

Para usar el archivo PHP (PHAR), se requiere la extensión phar.

Instalar PHAR a nivel mundial

$ wget https://phar.phpunit.de/phpunit.phar
$ chmod +x phpunit.phar
$ sudo mv phpunit.phar /usr/local/bin/phpunit
$ phpunit --version
PHPUnit x.y.z by Sebastian Bergmann and contributors.

También puede utilizar el archivo PHAR descargado directamente:

$ wget https://phar.phpunit.de/phpunit.phar
$ php phpunit.phar --version
PHPUnit x.y.z by Sebastian Bergmann and contributors.

2. Escribiendo casos de prueba de PHPunit
Cree un nuevo test.php:

vi test.php

1
escribe el siguiente código:

<?php
use PHPUnit\Framework\TestCase;

class Test extends TestCase
{
    #也可以直接继承PHPUnit_Framework_TestCase,从而不需要写use语句

    public function testPushAndPop()
    {
        $stack = [];
        $this->assertEquals(0, count($stack));

        array_push($stack, 'foo');
        $this->assertEquals('foo', $stack[count($stack)-1]);
        $this->assertEquals(1, count($stack));

        $this->assertEquals('foo', array_pop($stack));
        $this->assertEquals(0, count($stack));
    }
}
?>

Utilice el comando para probar después de guardar:

# phpunit test.php

1 Los
resultados son los siguientes:

PHPUnit 5.7.4 by Sebastian Bergmann and contributors.

Runtime:       PHP 7.1.0

.                                           1 / 1 (100%)

Time: 187 ms, Memory: 8.00MB

OK (1 test, 5 assertions)

phpunit proporciona una gran cantidad de funciones de aserción, consulte la clase abstracta PHPUnit_Framework_Assert para obtener más detalles.
P.ej:

public static function assertTrue($condition, $message = '')

public static function assertSame($expected, $actual, $message = '')

public static function assertEquals($expected, $actual, $message = '', $delta = 0, $maxDepth = 10, $canonicalize = FALSE, $ignoreCase = FALSE)

public static function assertArrayHasKey($key, array $array, $message = '')

Instrucciones:

this->assertTrue($a, "a error:$a);

this->assertTrue($a=='xy', "a($a) != xy);

this->assertSame('xy', $a, "a error");

this->assertEquals('xy', $a, "a error");

this->assertArrayHasKey('uid', $arr);

El parámetro $ message se emite si la aserción falla.

La condición de assertSame debe ser igual al tipo y valor, pero assertEquals no lo es.
Tal como:

$this->assertEquals(2, '2'); //通过

$this->assertSame(2, '2'); //失败

Supongo que te gusta

Origin blog.csdn.net/qq_26249609/article/details/103202040
Recomendado
Clasificación