Upload
wesley-alcoforado
View
614
Download
2
Embed Size (px)
Citation preview
Tests unitaires en .NET avec FakeItEasy
QC | Pratique Microsoft | 2014-06-26
Wesley Alcoforado
2
Sommaire
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
Tests unitaires1
Qu’est-ce qu’un mock?2
Fake It Easy3
Démo4
3
Tests unitaires
1 3 42
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
4
Tests unitaires
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
Garantir le bon fonctionnement du codeGarantir la non régressionAider à suivre les bonnes pratiques de dév.
Un test doit être:IndépendantSimple
5
Qu’est-ce qu’un mock?
1 3 42
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
6
Qu’est-ce qu’un mock?
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
Objet factice qui reproduit le comportement d’objets réels de façon contrôlée
Remplace un comportement non déterministe> Température ambiante; l’heure.
Simule des situations difficiles à reproduire> Erreur de réseau
Initialisation longue> Objet qui crée une base de données
L’objet réel n’existe pas encore
7
Fake It Easy
1 3 42
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
8
Fake It Easy
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
Framework de creation d’objets facticesInterface fluideCompatible avec C# et VB.NETOpen source (https://github.com/FakeItEasy/FakeItEasy)Disponible via Nuget
9
Types acceptés
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
InterfacesClasses qui ont au moins un constructeur accessible par FakeItEasy
Pas de classes sealedPas de classes statiques
10
Qui peut être remplacé?
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
Propriétés et méthodesVirtuelles AbstraitesDéfinies dans une interface
Les membres statiques, incluant les extension methods, ne sont pas supportés.
11
Instanciation
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
12
Configuration du comportement
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
13
Types d’assertions
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
14
Démo
1 3 42
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
15
Example de couche affaire
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
16
Test unitaire (1)
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
17
Test unitaire (2)
TESTS UNITAIRES EN .NET AVEC FAKEITEASY
18
Questions?
TESTS UNITAIRES EN .NET AVEC FAKEITEASY