A test is placed in a container, depending on whether it generates compiled code. By default, tests that do generate compiled code, such as unit tests and coded Web tests, compile into assemblies that can be found in folders named bin\Debug or obj\Debug, under the test project folder.
Other test types, such as generic, ordered, load, Web, and manual tests, do not require compilation. The test containers for these test types are Word documents, XML files, or other text-based files that can be found in the project folder.
Why would you want to know how to identify a test container? One reason is to be able to provide correct values for the /testcontainer: option of the MSTest.exe command-line test execution utility. For more information, see MSTest.exe Command-Line Options.
The following table explains how to identify the files that contain tests of the various test types.
A single source-code file typically contains multiple unit test methods. Therefore, you cannot check in an individual unit test. You must check in its entire source-code file. These files have the extension .cs, .vb, or .cpp, depending on the language in which they are coded.
Manual tests in Microsoft Word format have the extension .mht. Manual tests in text format have the extension .mtx.
Ordered tests have the extension .orderedtest.
Generic tests have the extension .GenericTest.
Web tests have the extension .webtest.
Load tests have the extension .loadtest.
Test metadata files and test run configuration files do not contain tests but nevertheless play important roles in testing.
Test metadata file
Test metadata files contain test lists and links to tests. For more information about test lists, see Using Test Lists. Test metadata files have the extension .vsmdi.
Test run configuration file
Your settings that configure the way tests are run are stored in test run configuration files. For more information, see Configuring Test Execution. Test run configuration files have the extension .testrunconfig.