Compartilhar via


Projeto de exemplo para criar testes de unidade

"woodgrove Bank" exemplo consiste em código que você pode construir em um programa simples. Você pode gerar testes de unidade que testam os diversos métodos, públicos e privados, do programa Woodgrove Bank.

Este código de exemplo é fornecido para uso em orientações a seguir:

Nota o erro intencional somente neste exemplo é que o método de débito em "valor de + = m_balance" deve ter um sinal de menos não um sinal de mais assinar antes do sinal de igual.

Código de Exemplo

O código mais atualizado para esta amostra está disponível aqui:

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 > m_balance)
            {
                throw new ArgumentOutOfRangeException("amount");
            }

            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 < 0)
            {
                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);
        }

    }
}

/ * Os exemplos de empresas, organizações, produtos, nomes de domínio, endereços de email, logotipos, pessoas, lugares e acontecimentos aqui mencionados são fictícios. Nenhuma associação com real da empresa, organização, produto, nome de domínio, endereço de e-mail, logotipo, pessoa, lugares ou eventos é intencional ou deve ser inferida. */

Trabalhando com o código.

Para trabalhar com esse código, você primeiro deve criar um projeto para ele na Visual Studio. Siga as etapas de "preparar o passo a passo" seção Demonstra Passo a passo: Criar e executar testes de unidade.

Consulte também

Tarefas

Demonstra Passo a passo: Criar e executar testes de unidade

Demonstra Passo a passo: Executar testes e exibir cobertura código

Demonstra Passo a passo: Usando o utilitário de teste de linha de comando