Share via


단위 테스트를 만들기 위한 샘플 프로젝트

"Woodgrove Bank" 샘플은 간단한 프로그램으로 빌드할 수 있는 코드로 구성되어 있습니다.프로그램으로 빌드한 다음에는 Woodgrove Bank 프로그램의 다양한 메서드(공용 및 전용)를 테스트하는 단위 테스트를 생성할 수 있습니다.

이 샘플 코드는 다음 연습에서 사용하도록 제공됩니다.

참고   이 샘플에서 의도된 유일한 오류는 Debit 메서드에서 "m_balance += amount"의 등호 앞에 더하기 기호가 아니라 마이너스 기호가 있는 것입니다.

샘플 코드

이 샘플의 최신 코드를 보려면 다음을 참조하십시오.

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

    }
}

/* 예제에 사용된 회사, 기관, 제품, 도메인 이름, 전자 메일 주소, 로고, 사람, 위치 및 이벤트는 실제 데이터가 아닙니다.어떠한 실제 회사, 기관, 제품, 도메인 이름, 전자 메일 주소, 로고, 사람, 위치 또는 이벤트와도 연관시킬 의도가 없으며 그렇게 유추해서도 안 됩니다.*/

코드 작업

이 코드로 작업하려면 먼저 Visual Studio에서 이를 위한 프로젝트를 만들어야 합니다.연습: 관리 코드에 대한 단위 테스트 만들기 및 실행에서 "연습 준비" 단원의 단계별 지침을 따릅니다.

참고 항목

작업

연습: 관리 코드에 대한 단위 테스트 만들기 및 실행

연습: 명령줄 테스트 유틸리티 사용

기타 리소스

연습: 테스트 실행 및 코드 검사 보기