Exercice - Utiliser les données de test pour exposer des problèmes logiques dans une application console C#
La MakeChange méthode est en mesure de traiter correctement les transactions simulées lors de l’utilisation du testData tableau. Toutefois, les problèmes logiques sont exposés lors de la simulation des transactions à l’aide d’un jeu de données plus volumineux d’éléments à prix aléatoire. Ce problème illustre l’importance de tester minutieusement vos applications.
Spécification
Dans cet exercice de défi, vous devez configurer les variables utilisées pour simuler des transactions et vérifier que le rapport des transactions inclut les différences attendues.
Les exigences suivantes s’appliquent aux transactions simulées :
- Les déclarations de niveau supérieur simulent les transactions à l’aide de coûts des articles générés de manière aléatoire.
- Les instructions de niveau supérieur génèrent des valeurs aléatoires pour
itemCostdans la plage de2 - 49. - les instructions de niveau supérieur simulent 100 transactions.
La sortie de transaction signalée doit inclure :
- Enregistrement de 100 tentatives de transactions.
- Instances d’un message indiquant : « Impossible d’effectuer une transaction : InvalidOperationException : Pas assez d’argent fourni pour terminer la transaction ».
- Instances d’un message indiquant : « Impossible d’effectuer la transaction : InvalidOperationException : La caisse n’est pas en mesure d’apporter des modifications pour les espèces fournies ».
- Différence entre les valeurs de caisse signalées et celles attendues.
Vérifier votre travail
Pour vérifier que votre application produit les résultats attendus lors de l’implémentation des exigences de simulation spécifiées, effectuez les étapes suivantes :
Vérifiez que le dossier ChallengeProject est ouvert dans Visual Studio Code.
Dans l’affichage EXPLORER, développez les dossiers ChallengeProject et Starter .
Le dossier Starter contient l’exemple d’application pour ce module de projet guidé.
Ouvrez le fichier Program.cs dans l’éditeur Visual Studio Code.
Configurez l’environnement de débogage et la configuration de lancement.
Configurez l’application pour utiliser le
testDatatableau pour les transactions simulées (useTestData = true).Exécutez l’application dans une session de débogage.
Vérifiez que les valeurs « signalées » et « attendues » sont égales dans le rapport de transactions généré par l’application.
Configurez les variables d’application pour répondre aux exigences de simulation dans la section Spécification .
Exécutez l’application dans une session de débogage.
Vérifiez que votre application répond aux exigences de sortie suivantes :
Le rapport des transactions comprend un enregistrement de 100 tentatives de transactions.
Le rapport de transactions inclut une différence entre les valeurs de caisse signalées et celles attendues.
Le rapport des transactions inclut des instances des messages suivants :
Could not make transaction: InvalidOperationException: Not enough money provided to complete the transaction.Could not make transaction: InvalidOperationException: The till is unable to make change for the cash provided.
Une fois que vous avez validé les résultats de cet exercice, passez à l’exercice suivant de ce défi.