はのは私が似別のプロジェクトでテストしたいユニットの入力を読み取り、コンソールに書き込みコンソールプログラムをテストする方法
using System;
public class Solution
{
public static void Main(string[] args)
{
int[] arr = Array.ConvertAll(Console.ReadLine().Split(' '), int.Parse);
Array.Sort(arr);
Console.WriteLine(string.Join(" ", arr));
}
}
のような単純なプログラムがあるとしましょう
[TestMethod]
public void TwoNumbersDescendingAreSwapped()
{
string input = "2 1";
string expectedOutput = "1 2";
// ... ???
Assert.AreEqual(expectedOutput, actualOutput);
}
ソリューションから.exeを実際に使用せずにこれを行うことは可能ですか?
_ "ソリューションからの.exeを実際に使用しないでください" _ - それはどういう意味ですか?どのようにして.exeを使用せずに.exeのコードをテストするつもりですか?コードをテストするには少なくとも2つの方法があると思いますが、どちらもコードを使用する必要があります。コードを使用せずにコードをどのようにテストするのか分かりませんので、意味を明確にする必要があります。注目すべきは、あなたの質問が理解できるものであっても、それはあまりにも広範で、「それは可能ですか?質問はです。あなたは何か_try_する必要があり、あなたが立ち往生したときに質問をします。 –
はい、TypeMockアイソレータまたはMicrosoft Fakesを使用すると可能です。あなたはVSのエンタープライズ版を持っている場合、偽のために、 – zaitsman