次の方法で共有


単体テストを作成するサンプル プロジェクト

"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 で作成する必要があります。 「チュートリアル : 単体テストの作成と実行」の「チュートリアルを準備する」の手順を実行します。

参照

処理手順

チュートリアル : 単体テストの作成と実行

チュートリアル : テストを実行し、コード カバレッジを表示する

チュートリアル : コマンド ライン テスト ユーティリティの使用