Aller au contenu principal
Notification
ITPro
  • Ressources IT
  • Newsletter
Se connecter
S’inscrire
  • Cloud & Infrastructure
  • Cybersécurité
  • Data & IA
  • Workplace et Endpoints
Se connecter
S’inscrire
  • Facebook
  • X
  • Linkedin
  • Instagram

Inscrivez-vous

Newsletter iTPro

  • Cloud & Infrastructure
  • Cybersécurité
  • Data & IA
  • Workplace et Endpoints
  • Cloud & Infrastructure
  • Cybersécurité
  • Data & IA
  • Workplace et Endpoints
  1. Accueil
  2. Data & IA
  3. Bases de données modernes
  4. Dossier SQL Server : Débarassez-vous des dépendances de base de données dans le développement orienté tests (3/3)

Sommaire

Tech stories

  • Tech Stories

    Sous-titres vidéo : formats SRT, VTT et bonnes pratiques

  • Tech Stories

    Sécuriser sa téléphonie IP : 5 failles critiques à anticiper

Bases de données modernes

Dossier SQL Server : Débarassez-vous des dépendances de base de données dans le développement orienté tests (3/3)

Par

Benjamin Day
30 novembre 2010
2 minutes

En suivant ces sept conseils, vous serez prêt à faire face à un sinistre, voire éviterez le problème des tests d’intégration de bout en bout avec le modèle de développement (Repository pattern). De nombreux développeurs doivent écrire des tests unitaires dans le cadre d’une généralisation de la conception et du développement axés sur les tests.

Sommaire

Alors que cette approche permet assurément de tester plus facilement cette méthode, le réusinage de UserFacade en vue d’employer le modèle Repository facilite aussi les modifications concernant le mode et l’emplacement de stockage de vos données lorsque vous exécutez l’application en production.

Supposons que vous souhaitiez convertir votre magasin de données d’une base de données en service Web.
La seule chose à faire est d’écrire une implémentation de service Web de IUserRepository et de la passer à l’objet UserFacade. C’est aussi simple que cela ! Sans modifier le code dans UserFacade, vous effectuez les enregistrements et extractions au niveau d’un service.

Le recours à une implémentation de substitution de Repository est également utile pour gérer les dépendances dans votre calendrier de projet. Si votre équipe travaille sur un système de grande envergure, les personnes qui écrivent le code pour l’accès aux données peuvent suivre un calendrier distinct d’autres membres de l’équipe. La description du contrat concernant ce qu’il va se passer dans votre application via une interface est généralement nettement plus rapide que d’attendre que cet aspect soit réellement écrit.

En utilisant des interfaces et des Repository, vous pouvez décrire rapidement les interfaces, puis écrire les implémentations de substitution qui vous donnent suffisamment de fonctionnalité afin d’écrire le reste de l’application.

Maintenant que la base de données est éliminée du test UsernameExists(), vous allez peut-être vous demander comment tester la logique d’accès aux données. C’est simple : écrivez les tests unitaires sur l’implémentation de base de données de IUserRepository. Cette approche aboutit en réalité à un test amélioré et plus propre, car vous testez la logique d’accès aux données directement, au lieu de le faire via une autre fonctionnalité. Malheureusement, lorsque vous écrivez ces tests, vous devez toujours vous préoccuper de la logique pour configurer et initialiser la base de données avec des données de test appropriées. Ce point est relativement fastidieux mais, au moins, c’est le seul aspect dont vous devez vous préoccuper pour les tests Repository au lieu que cela devienne un souci pour chaque test qui utilise un Repository.

Tech Stories

Sous-titres vidéo : formats SRT, VTT et bonnes pratiques

Le sous-titrage n'est plus une option mais un levier de croissance : 80 % des vidéos sur les réseaux sociaux sont consommées sans le son. Pourtant, choisir entre le format…

Lire l'article : Sous-titres vidéo : formats SRT, VTT et bonnes pratiques

Ressource IT

SIEM & PME : Comment construire la boîte noire de votre SI ?

Passez à la cybersécurité proactive, transformez la collecte et l’analyse des logs en un bouclier dynamique contre les cybermenaces. Découvrez comment mettre en place une approche SIEM modulaire, évolutive et…

Découvrir la ressource : SIEM & PME : Comment construire la boîte noire de votre SI ?

Inscrivez-vous

Newsletter iTPro

Benjamin Day

Rédigé par Benjamin Day

Benjamin Day est un professionnel IT et rédacteur sur iTPro.fr : Découvrez ses articles informatique

Tous ses articles →

Bases de données modernes

À lire également...

  • BYOD - Les atouts cachés du Bring Your Own Model pour les entreprises - iTPro.fr
    Bases de données modernes

    Les atouts cachés du Bring Your Own Model pour les entreprises

    Par

    Sabine Terrey
    25 octobre 2024
    4 minutes
  • Change Data Capture pour les entreprises qui réussisent
    Bases de données modernes

    Le Change Data Capture est l’avenir des entreprises qui réussissent

    Par

    Sabine Terrey
    22 mars 2024
    4 minutes
  • comment_Migrer_vos_bases_de_donnees_dans_le_cloud
    Bases de données modernes Cloud & Infrastructure

    Migration des bases de données dans le cloud : mode d’emploi

    Par

    Sabine Terrey
    9 janvier 2023
    4 minutes
  • Bases de données modernes Cloud & Infrastructure

    Pourquoi migrer ses bases de données dans le Cloud 

    Par

    Sabine Terrey
    12 décembre 2022
    6 minutes
ITPro
  • X
  • Linkedin
  • Facebook
  • Instagram
Se connecter
S’inscrire
  • Cloud & Infrastructure
  • Cybersécurité
  • Data & IA
  • Workplace et Endpoints
  • Ressources IT
  • Espace responsable sécurité
  • Espace DSI
  • Espace Architecte IT
  • Espace IT Manager
  • Espace Responsable Data / IA

Inscrivez-vous

Newsletter iTPro

© iTPro.fr

  • Comité éditorial
  • Régie médias
  • Mentions-légales
  • Gestion et protection des données personnelles
  • Gestion des cookies
Gérer le consentement aux cookies
Pour offrir les meilleures expériences, nous utilisons des technologies telles que les cookies pour stocker et/ou accéder aux informations des appareils. Le fait de consentir à ces technologies nous permettra de traiter des données telles que le comportement de navigation ou les ID uniques sur ce site. Le fait de ne pas consentir ou de retirer son consentement peut avoir un effet négatif sur certaines caractéristiques et fonctions.
Fonctionnel Toujours activé
Le stockage ou l’accès technique est strictement nécessaire dans la finalité d’intérêt légitime de permettre l’utilisation d’un service spécifique explicitement demandé par l’abonné ou l’internaute, ou dans le seul but d’effectuer la transmission d’une communication sur un réseau de communications électroniques.
Préférences
Le stockage ou l’accès technique est nécessaire dans la finalité d’intérêt légitime de stocker des préférences qui ne sont pas demandées par l’abonné ou la personne utilisant le service.
Statistiques
Le stockage ou l’accès technique qui est utilisé exclusivement à des fins statistiques. Le stockage ou l’accès technique qui est utilisé exclusivement dans des finalités statistiques anonymes. En l’absence d’une assignation à comparaître, d’une conformité volontaire de la part de votre fournisseur d’accès à internet ou d’enregistrements supplémentaires provenant d’une tierce partie, les informations stockées ou extraites à cette seule fin ne peuvent généralement pas être utilisées pour vous identifier.
Marketing
Le stockage ou l’accès technique est nécessaire pour créer des profils d’internautes afin d’envoyer des publicités, ou pour suivre l’internaute sur un site web ou sur plusieurs sites web ayant des finalités marketing similaires.
  • Gérer les options
  • Gérer les services
  • Gérer {vendor_count} fournisseurs
  • En savoir plus sur ces finalités
Voir les préférences
  • {title}
  • {title}
  • {title}