Cvičení – použití testovacích dat k zveřejnění problémů logiky v konzolové aplikaci jazyka C#
Metoda MakeChange dokáže úspěšně zpracovat simulované transakce při použití testData pole. Problémy s logikou se ale zveřejňují při simulaci transakcí pomocí větší datové sady náhodně cenových položek. Tento problém ukazuje důležitost důkladného testování aplikací.
Specifikace
V tomto výzvovém cvičení je potřeba nakonfigurovat proměnné použité k simulaci transakcí a ověřit, že zpráva o transakcích zahrnuje očekávané nesrovnalosti.
Pro simulované transakce platí následující požadavky:
- Příkazy nejvyšší úrovně simulují transakce pomocí náhodně generovaných nákladů na položky.
- Příkazy nejvyšší úrovně generují náhodné hodnoty pro
itemCostv rozmezí2 - 49. - Příkazy nejvyšší úrovně simulují 100 transakcí.
Výstup ohlášené transakce musí zahrnovat:
- Záznam 100 pokusů o transakce.
- Výskyty zprávy, která hlásí: "Nelze provést transakci: InvalidOperationException: Nedostatek poskytnutých peněz k dokončení transakce."
- Instance zprávy s oznámením: "Nelze provést transakci: InvalidOperationException: Do té doby nelze provést změnu pro poskytnuté hotovosti."
- Nesrovnalosti mezi hlášenými očekávanými hodnotami do té doby.
Zkontroluj svou práci
Pokud chcete ověřit, že vaše aplikace při implementaci zadaných požadavků simulace generuje očekávané výsledky, proveďte následující kroky:
Ujistěte se, že je složka ChallengeProject otevřená v editoru Visual Studio Code.
V zobrazení PRŮZKUMNÍK rozbalte složky ChallengeProject a Starter .
Složka Starter obsahuje ukázkovou aplikaci pro tento modul projektu s asistencí.
Otevřete soubor Program.cs v editoru Visual Studio Code.
Nakonfigurujte ladicí prostředí a konfiguraci spuštění.
Nakonfigurujte aplikaci tak, aby používala
testDatapole pro simulované transakce (useTestData = true).Spusťte aplikaci v ladicí relaci.
Ověřte, že hodnoty "hlášeny" a "očekávané" dokud se hodnoty nerovnají v sestavě transakcí vygenerované aplikací.
Nakonfigurujte proměnné aplikace tak, aby splňovaly požadavky simulace v části Specifikace .
Spusťte aplikaci v ladicí relaci.
Ověřte, že vaše aplikace splňuje následující požadavky na výstup:
Sestava transakcí obsahuje záznam 100 pokusů o transakce.
Sestava transakcí obsahuje nesrovnalost mezi hlášenými a očekávanými hodnotami pokladny.
Sestava transakcí obsahuje instance následujících zpráv:
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.
Jakmile ověříte výsledky pro toto cvičení, přejděte k dalšímu cvičení v této výzvě.