(Ou comment ne pas flipper pendant les MEP)
Tester, c'est douter
Tester, c'est savoir coder
Tests unitaires
Tester indépendamment une fonction/méthodes
Tests de validation
Tester la conformité au cahier des charges
Tests d'intégration
Tester l'ensemble des modules
...
Cékoiça?
Code coverage
Unité de mesure relative à la qualité des tests écrits
Mock (bouchon)
Simuler le retour d'une fonction lors des tests
Assertion
Étape de validation d'un comportement
Automatiser les tests pour :
Écrire des tests...
On a déjà trop de features...
C'est pas possible de tout tester...
Workflow pour une nouvelle feature
1) Constuire un jeu de données cohérents
2/3) Écrire les tests
2/3) Écrire le code
4) Pusher dans le saut de b*tes
5) Mettre en production
To be continued...
Workflow pour un bug
1) Écrire le(s) test(s)
2) Écrire le fix
3) Pusher dans le saut de b*tes
4) Mettre en production
To be continued...
$I->wantTo("POST /users - Create a new user");
$token = $this->getToken('user', 'user', 'admin');
// $I->haveHttpHeader("Authorization", "Bearer " . $token);
$I->sendPOST('/users');
$I->seeResponseIsJson();
$I->seeResponseContainsJson(array(
'status' => 200,
'error_code' => 'success_request',
'message' => 'OK',
'results' => array (
'first_name' => 'John',
'last_name' => 'Doe',
'email' => 'john.doe@mail.com'
)
));Intégration continue (Bitbucket Pipelines)
Remontée du code coverage
API testée intégralement
Déploiement continu
Jamais sans mon test