merkushin/easytest

PHP: The Easy Test

dev-main 2023-05-06 21:01 UTC

This package is not auto-updated.

Last update: 2024-10-30 21:17:01 UTC


README

The experimental tool for writing tests easily.

It uses PHP attributes for simpler organising and running tests.

Current implementation is extremely naive and allows writing test using functions.

Run tests in ./tests directory with ./vendor/autoload.php bootstrap script:

./vendor/bin/easytest ./tests ./vendor/autoload.php

Tests exmple:

<?php

namespace \TestNamespace\Example1;

use EasyTest\Attribute\Fixture;
use EasyTest\Attribute\Test;

#[Fixture]
function num(): int {
    return 1;
}

#[Test]
function test_is_one(int $num): void {
    assert($num === 1);
}

You can use #[Setup], #[TearDown] and #[Ignore] attributes to define correspoding functions or ignore ones.