PHPackages                             emeset/test - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Testing &amp; Quality](/categories/testing)
4. /
5. emeset/test

ActiveLibrary[Testing &amp; Quality](/categories/testing)

emeset/test
===========

Eines de testing per a projectes basats en el microframework docent Emeset.

0.1.13(4mo ago)033MITPHPPHP &gt;=8.0

Since Dec 4Pushed 4mo agoCompare

[ Source](https://github.com/Emeset-mvc/emeset-test)[ Packagist](https://packagist.org/packages/emeset/test)[ Docs](https://github.com/Emeset-mvc)[ RSS](/packages/emeset-test/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (3)Versions (16)Used By (0)

emeset/test
===========

[](#emesettest)

Eines de testing per a projectes basats en el microframework docent **Emeset**.

L’objectiu del paquet és que, en un projecte Emeset, puguis escriure tests així de senzills:

```
use Emeset\Test\TestCase;

class ExempleTest extends TestCase
{
    public function test_exemple()
    {
        $request  = $this->makeRequest($get, $post, $session);
        $response = $this->makeResponse();

        // ...
    }
}
```

i tenir automàticament disponible:

- el contenidor d’Emeset (`App\Container` o `Emeset\Container`),
- el fitxer de configuració del projecte (`App/config.php`),
- l’entorn de test (`.env.test`),
- una sessió PHP inicialitzada per treballar amb `$_SESSION` i middleware.

---

Instal·lació
------------

[](#installació)

Al teu projecte Emeset (per exemple, el projecte **links** o el projecte de sessió/login), executa:

```
composer require --dev emeset/test
```

Això instal·larà:

- el paquet `emeset/test`,
- el framework `emeset/framework` (si no el tens ja),
- i `phpunit/phpunit`.

---

Configuració bàsica del projecte
--------------------------------

[](#configuració-bàsica-del-projecte)

El paquet **NO** crea fitxers al teu projecte ni genera res automàticament.
Tu decideixes on van les coses. Et proposo la següent estructura:

```
.
├─ App/
├─ public/
├─ vendor/
├─ tests/
│  ├─ bootstrap.php
│  └─ ...
└─ phpunit.xml

```

### 1. Fitxer `phpunit.xml` a l’arrel del projecte

[](#1-fitxer-phpunitxml-a-larrel-del-projecte)

Crea un fitxer `phpunit.xml` amb aquest contingut mínim:

```

            tests

            App/

```

### 2. Fitxer `tests/bootstrap.php`

[](#2-fitxer-testsbootstrapphp)

Crea el fitxer `tests/bootstrap.php`:

```
