例如:
[TestFixtureSetUp]
public void Init()
{
GetTestRepo(false);
}
[TestFixtureSetUp]在这个例子中是什么意思?根据我的经验,[]通常指列表。
[TestFixtureSetUp]
public void Init()
{
GetTestRepo(false);
}
[TestFixtureSetUp]在这个例子中是什么意思?根据我的经验,[]通常指列表。
属性。它们是一种添加元数据的方法,用于方法/属性/接口/类/命名空间在运行时检查时。
您的示例将TestFixtureSetUpAttribute添加到方法中。这允许测试运行程序确定在设置文本夹时要运行类中的哪个方法。
测试运行程序在运行时将测试程序集加载到内存中。然后,它枚举在程序集内定义了特定属性(NUnit用于标记测试类的任何内容)的类。现在,运行程序知道要实例化哪些类来运行测试。然后,它查找类中定义的方法以找到要运行以设置测试夹的方法。它在每个方法中搜索所询问的属性。一旦找到该方法,它就知道在运行测试/每个测试之前运行该方法(无论在NUnit中是什么意思)。
属性都是关于添加有关可以在运行时搜索的方法的信息。如果您不需要它们,您不会错过它们,但当您确实需要它们时,它们可用时非常棒。
在C#中,您可以从类型名称中省略"Attribute"。编译器知道当您说[Serializable]
时,您在谈论"SerializableAttribute"。它们被称为属性(类似于Java的注解),并作为元数据编译在其中。
你在Stack Overflow中一次提出一个问题的方式,看起来像是在重建一个基本的VB/C#常见问题解答。此外,这似乎是获得声望的好方法。
回答标题中的问题,[]是用于
VB.Net使用<>字符来表示元数据,但使用()来表示数组访问。
Java使用前导“@”来达到同样的目的。
如果没有这些特殊字符,编译器无法解释您写的内容。不确定您还想了解什么。您想知道TestFixture的含义吗?