我创建了一个Hello World程序,我是C#的新手,我的程序会打印100个单词,如下所示
public static void Main(/*I forgot arguments*/)
{
string []s=new string [100];
foreach(string ss in s)
{
ss="Hello World";
Console.WriteLine("{0}\n",ss);
}
}
您能否逐步向我展示如何为此计划创建测试?需要吗?我没有测试人员如何进行测试的图像。对不起,我很蠢。
我想我已经尽了最大努力,没有人发现我发现我不配得到任何帮助是不值得的?我不需要上课,因为我在事故发生后很久才忘记上课。
答案 0 :(得分:1)
首先,你不能(或 - 你不应该)测试void
方法。您正在测试方法的输出 - Main没有。第二个想法:你不能模拟(模拟)一个Console
对象。阅读一些关于 mock 和 mocking 的教程。
样本测试的样本方法可能与此类似:
public class SimpleCalculator
{
public int SumTwoNumbers(int number1, int number2)
{
return number1 + number2;
}
}
[TestClass]
public class TestClass
{
[TestMethod]
public void Test_SimpleCalculator_SumTwoNumbers_CorrectValues()
{
// Arrange
SimpleCalculator calc = new SimpleCalculator();
// Act
int result = calc.SumTwoNumbers(5, 2);
// Assert
Assert.AreEqual(7, result);
}
}
希望这有点帮助。
答案 1 :(得分:1)
为什么需要对此进行测试?你会测试什么?而不是如何测试代码,我会考虑如何使它更好。
看看下面的主页。
public static void Main(/*I forgot arguments*/)
{
for(var i = 0; i < 100; i++)
{
Console.WriteLine("Hello World");
}
}
注意,您不使用您创建的阵列,因此无需创建它。当您确切知道需要循环的次数时,请使用for循环。此外,如果您没有使用其他字符串对其进行格式化,则无法格式化字符串。
答案 2 :(得分:0)
将上面的代码刷新到一个方法,而不是将它放在main中。然后在这里参考一些单元测试用例文档(如果您正在寻找单元测试)http://www.nunit.org/index.php?p=quickStart&r=2.5.10