Forループから10件の10件の結果をすべて取得しようとしています。しかし、私が走ると、初めての最初の結果が返されます。この状態のための助け、これは私の全体のコードです、 2ファイルが含まれて、私はそれを修正するために何度も試してみました。単体テストはループから10件の結果を返します
//file BankAccount.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Bank //just want to demo this thing, it hasn't completed
{
namespace BankAccountNS
{
public class BankAccount
{
private double m_balance;
public BankAccount(double balance)
{
m_balance = balance;
}
public bool getMoney(double amount) //funtion get money from account
{
if (amount > m_balance || amount < 0) //check money
{
return false;
}
return true;
}
}
}
}
//file BankAccountTests.cs
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Bank.BankAccountNS;
namespace BankTest
{
[TestClass]
public class BankAccountTests
{
[TestMethod]
public void TestEveryDebit(BankAccount Ba) //test every case from TestAll
{
Assert.IsTrue(Ba.getMoney(24000));
}
[TestMethod]
public void TestAll() //create all cases
{
for(int i = 0; i < 10; i++)
{
BankAccount Ba = new BankAccount(23996 + i);
TestEveryDebit(Ba);
}
}
}
}
他の人の助けを借りてください:( –
あなたが持っている問題は何ですか?また、MSTestのように見えますが、これは私が知っている限りパラメーター化された単体テストを許可していません。 「TestEveryDebit」は '[TestMethod']としてマークされるべきではないと考えてください。' TestAll'は '[TestMethod]'としてマークされ、 'TestEveryDebit'はおそらくプライベートであるべきです(私は思う) – Kritner
また、あなたのforループを実行します。テストアサートがfalseを返すので、私はあなたがテストしているものについてはっきりしていません。 – Kritner