Nam*_* VU 5 c# attributes unit-testing
假设我们有一个简短的程序:
namespace ConsoleTryIt
{
static class Program
{
static void Main(string[] args)
{
var sum = Add(1, 2);
}
private static int Add(int p, int p2)
{
return p + p2;
}
}
}
Run Code Online (Sandbox Code Playgroud)
为此类创建单元测试类时,Visual Studio将使用该属性创建一个测试方法DeploymentItem.我读过有关此属性的MSDN,但仍然没有得到它的含义.
/// <summary>
///A test for Add
///</summary>
[TestMethod()]
[DeploymentItem("ConsoleTryIt.exe")]
public void AddTest()
{
var expected = 122;
var actual = Program_Accessor.Add(1, 121);
Assert.AreEqual(expected, actual);
}
Run Code Online (Sandbox Code Playgroud)
如果你明白了,请分享!
谢谢大家的回答.因此,我们的想法是将参数中给出的项目复制到测试环境的文件夹中.我的下一个问题是:为什么这个方法需要这个属性而其他方法不需要?
我想这与测试类中的私人成员有关,但对我来说并不清楚.
请继续讨论.