Condividi tramite


Esempio di unit test

Aggiornamento: novembre 2007

L'esempio "Woodgrove Bank" è un codice per compilare un programma semplice. È possibile in seguito generare degli unit test per verificare vari metodi, sia pubblici che privati, del programma Woodgrove Bank.

Questo codice di esempio viene fornito per le seguenti procedure dettagliate:

Codice di esempio

Il codice più aggiornato per questo esempio viene riportato di seguito.

using System; 

namespace BankAccountNS
{
    /// <summary> 
    /// Bank Account demo class. 
    /// </summary> 
    public class BankAccount
    {
        private string m_customerName;

        private double m_balance;

        private bool m_frozen = false;

        private BankAccount()
        {
        }

        public BankAccount(string customerName, double balance)
        {
            m_customerName = customerName;
            m_balance = balance;
        }

        public string CustomerName
        {
            get { return m_customerName; }
        }

        public double Balance
        {
            get { return m_balance; }
        }

        public void Debit(double amount)
        {
            if (m_frozen)
            {
                throw new Exception("Account frozen");
            }

            if (amount < 0)
            {
                throw new ArgumentOutOfRangeException("amount");
            }

            m_balance += amount;
        }

        public void Credit(double amount)
        {
            if (m_frozen)
            {
                throw new Exception("Account frozen");
            }

            if (amount > m_balance)
            {
                throw new ArgumentOutOfRangeException("amount");
            }

            m_balance += amount;
        }

        private void FreezeAccount()
        {
            m_frozen = true;
        }

        private void UnfreezeAccount()
        {
            m_frozen = false;
        }

        public static void Main()
        {
            BankAccount ba = new BankAccount("Mr. Bryan Walton", 11.99); 

            ba.Credit(5.77);
            ba.Debit(11.22);
            Console.WriteLine("Current balance is ${0}", ba.Balance);
        }

    }
}

/* The example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious.  No association with any real company, organization, product, domain name, email address, logo, person, places, or events is intended or should be inferred. */
Nota:

È possibile notare una versione meno recente di questo esempio sul disco rigido del computer nella directory di installazione di Visual Studio Team System Test Edition. Per impostazione predefinita, gli esempi vengono copiati durante l'installazione in una cartella in \Programmi\Visual Studio 9\Samples\. Per questo esempio, si consiglia invece di utilizzare il codice disponibile in questo argomento della Guida.

Utilizzo del codice

Per utilizzare questo codice, è necessario avere prima creato un progetto apposito in Visual Studio. Completare i passaggi nella sezione "Preparazione per la procedura dettagliata" in Procedura dettagliata: creazione ed esecuzione di unit test

Vedere anche

Attività

Procedura dettagliata: creazione ed esecuzione di unit test

Procedura dettagliata: esecuzione di test e visualizzazione di code coverage

Procedura dettagliata: utilizzo dell'utilità di test della riga di comando