The unit tests you write are run by Visual Studio using the unit test execution host. This host has to examine your code and find the unit tests within it and run them accordingly. To do so, the host relies on attributes. Recall that an attribute is used to provide metadata about your code. Other code (such as the unit test host) can use reflection to determine various bits of information about your code.
As you’ve seen in the brief samples thus far, you signify unit tests by decorating your code with the attribute classes defined inside the unit testing namespace. For example, a test class has the
TestClass attribute; a test method is indicated using the
TestMethod attribute. Table 8.2 presents a list of the most common ...