développeur PHP depuis + 12 ans
Instant gif
Profitez c'est
le seul
Problème
C'est la slide
à retenir !
Jean-Marc
Malik
Mentalisation ?
On prend les mêmes et on recommence
Plus grosse flèche
parce que c'est long
On prend les mêmes et on recommence
5718 €
9987 €
Qu'est-ce qu'on a pour ce prix ?
Prix d'une
documentation classique ?
Temps de
prise en main du logiciel ?
On ne se parle jamais trop
Discussion
Test d'intégration
Test unitaire
Test unitaire
Test d'intégration
Recette
Modelling
by example
Given I registred my vehicle with platenumber "3456 RT 567"
$vehicle = Vehicle::registred(new Platenumber("3456 RT 567"))
public function testAddRequestHeader(array $addHeadersSteps, array $expectedHeaders)
public function test_should_not_decode_invalid_json()
public function test multiple retry should lead to park()
Espace insécables
FTW
When I park my vehicle with platenumber "3456 RT 567" at location "3.123456,2.7890"
$this->commandBus->handle(new ParkVehicle('3456 RT 567', '3.123456,2.7890'));
Given I registred my vehicle with platenumber "3456 RT 567"
Then the known location of my vehicle "3456 RT 567" should be "3.123456,2.7890"
$this->pastChanges[] = new Domain\VehicleWasRegistered(
$this->userId,
$platenumber
);
$this->vehicleFleetShouldHaveRecordedChanges([
new Domain\VehicleWasParked(
$this->userId,
$platenumber,
$location->getLatitude(),
$location->getLongitude(),
$this->parkedAt->getTimestamp()
)
]);