Mise en route et vérification du fonctionnement de l'application :
```bash
composer self-update
composer update
php -S lacalhost:8000
```
Installation de *codeception* :
```bash
composer remove phpunit/phpunit
composer require "codeception/codeception"--dev
composer update
php vendor/bin/codecept bootstrap
```
## Premiers tests avec `PhpBrowser`
Afin de visualiser les mêmes informations en **anglais** que ce que vous fournit le module `PhpBrowser` de navigation *headless* de *codeception* , je vous recommande d'utiliser un navigator comme `Firefox`, que vous configurerez pour afficher les pages en anglais.
Configuration du serveur pour les tests d'acceptation dans `tests/Acceptance.suite.yml` :
```yaml
actor:AcceptanceTester
modules:
enabled:
-PhpBrowser:
url:http://localhost:8000/
```
Création du premier test dans `tests/Acceptance/PremierCest.php`, attention par défaut la page est en anglais.
Si vous avez une erreur, vous pouvez consulter le contenu du fichier `HTML` dans `tests/_output`.
Voici un exemple de premier test, on contrôle la présence de la petite *maxime* en bas de page *Because ignorance is bliss* :
```php
<?php
namespaceTests\Acceptance;
useTests\Support\AcceptanceTester;
classPremierCest
{
// tests
publicfunctionfrontpageWorks(AcceptanceTester$I)
{
$I->amOnPage('/');
$I->see('Because ignorance is bliss');
}
}
```
## Tester une application avec JS côté client
Malheureusement le logiciel `PrivateBin` nécessite un navigateur capable d'interpréter le code `Javascript` embarqué.
Avec `codeception`, la solution passe par le module `WebDriver`, qu'il faut tout d'abord installer.
Ce module permettra d'utiliser l'un des navigateurs visuels suivants : `Chrome`, `Firefox`,
ou l'un des navigateurs *headless* suivants : `Selenium Headless`, `ChromeDriver`, `GeckoDriver`
Installation de `WebDriver` et de `Selenium` dans une nouvelle branche `git` nommée `<votre login>_sel` :