diff options
Diffstat (limited to 'tools/NUnit/doc/category.html')
-rw-r--r-- | tools/NUnit/doc/category.html | 283 |
1 files changed, 283 insertions, 0 deletions
diff --git a/tools/NUnit/doc/category.html b/tools/NUnit/doc/category.html new file mode 100644 index 0000000..28064ee --- /dev/null +++ b/tools/NUnit/doc/category.html @@ -0,0 +1,283 @@ +<!-- saved from url=(0014)about:internet --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> +<html> +<!-- Standard Head Part --> +<head> +<title>NUnit - Category</title> +<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> +<meta http-equiv="Content-Language" content="en-US"> +<link rel="stylesheet" type="text/css" href="nunit.css"> +<link rel="shortcut icon" href="favicon.ico"> +</head> +<!-- End Standard Head Part --> + +<body> + +<!-- Standard Header for NUnit.org --> +<div id="header"> + <a id="logo" href="http://www.nunit.org"><img src="img/logo.gif" alt="NUnit.org" title="NUnit.org"></a> + <div id="nav"> + <a href="http://www.nunit.org">NUnit</a> + <a class="active" href="index.html">Documentation</a> + </div> +</div> +<!-- End of Header --> + +<div id="content"> + +<script language="JavaScript" src="codeFuncs.js" ></script> <!-- Do it this way for IE --> + +<h3>CategoryAttribute (NUnit 2.2)</h3> +<p>The Category attribute provides an alternative to suites for dealing with groups + of tests. Either individual test cases or fixtures may be identified as + belonging to a particular category. Both the gui and console test runners allow + specifying a list of categories to be included in or excluded from the run. + When categories are used, only the tests in the selected categories will be + run. Those tests in categories that are not selected are not reported at all.</p> +<p>This feature is accessible by use of the /include and /exclude arguments to the + console runner and through a separate "Categories" tab in the gui. The gui + provides a visual indication of which categories are selected at any time.</p> + +<h4>Test Fixture Syntax</h4> + +<div class="code"> + +<div class="langFilter"> + <a href="javascript:Show('DD1')" onmouseover="Show('DD1')"><img src="img/langFilter.gif" width="14" height="14" alt="Language Filter"></a> + <div id="DD1" class="dropdown" style="display: none;" onclick="Hide('DD1')"> + <a href="javascript:ShowCS()">C#</a><br> + <a href="javascript:ShowVB()">VB</a><br> + <a href="javascript:ShowMC()">C++</a><br> + <a href="javascript:ShowJS()">J#</a><br> + </div> +</div> + +<pre class="cs">namespace NUnit.Tests +{ + using System; + using NUnit.Framework; + + [TestFixture] + [Category("LongRunning")] + public class LongRunningTests + { + // ... + } +} +</pre> + +<pre class="vb">Imports System +Imports Nunit.Framework + +Namespace Nunit.Tests + + <TestFixture(), Category("LongRunning")> + Public Class LongRunningTests + ' ... + End Class +End Namespace +</pre> + +<pre class="mc">#using <Nunit.Framework.dll> +using namespace System; +using namespace NUnit::Framework; + +namespace NUnitTests +{ + [TestFixture] + [Category("LongRunning")] + public __gc class LongRunningTests + { + // ... + }; +} + +#include "cppsample.h" + +namespace NUnitTests { + // ... +} +</pre> + +<pre class="js">package NUnit.Tests; + +import System.*; +import NUnit.Framework.TestFixture; + + +/** @attribute NUnit.Framework.TestFixture() */ +/** @attribute NUnit.Framework.Category("LongRunning") */ +public class LongRunningTests +{ + // ... +} +</pre> +</div> +<h4>Test Syntax</h4> +<div class="code"> + +<div class="langFilter"> + <a href="javascript:Show('DD2')" onmouseover="Show('DD2')"><img src="img/langFilter.gif" width="14" height="14" alt="Language Filter"></a> + <div id="DD2" class="dropdown" style="display: none;" onclick="Hide('DD2')"> + <a href="javascript:ShowCS()">C#</a><br> + <a href="javascript:ShowVB()">VB</a><br> + <a href="javascript:ShowMC()">C++</a><br> + <a href="javascript:ShowJS()">J#</a><br> + </div> +</div> + +<pre class="cs">namespace NUnit.Tests +{ + using System; + using NUnit.Framework; + + [TestFixture] + public class SuccessTests + { + [Test] + [Category("Long")] + public void VeryLongTest() + { /* ... */ } +} +</pre> + +<pre class="vb">Imports System +Imports Nunit.Framework + +Namespace Nunit.Tests + + <TestFixture()> + Public Class SuccessTests + <Test(), Category("Long")> Public Sub VeryLongTest() + ' ... + End Sub + End Class +End Namespace +</pre> + +<pre class="mc">#using <Nunit.Framework.dll> +using namespace System; +using namespace NUnit::Framework; + +namespace NUnitTests +{ + [TestFixture] + public __gc class SuccessTests + { + [Test][Category("Long")] void VeryLongTest(); + }; +} + +#include "cppsample.h" + +namespace NUnitTests { + // ... +} +</pre> + +<pre class="js">package NUnit.Tests; + +import System.*; +import NUnit.Framework.TestFixture; + + +/** @attribute NUnit.Framework.TestFixture() */ +public class SuccessTests +{ + /** @attribute NUnit.Framework.Test() */ + /** @attribute NUnit.Framework.Category("Long") */ + public void VeryLongTest() + { /* ... */ } +} +</pre> + +</div> + +<h3>Custom Category Attributes</h3> + +<p>Beginning with <b>NUnit 2.4</b>, it is possible to define custom +attributes that derive from <b>CategoryAttribute</b> and have them +recognized by NUnit. The default protected constructor of CategoryAttribute +sets the category name to the name of your class. + +<p>Here's an example that creates a category of Critical tests. It works +just like any other category, but has a simpler syntax. A test reporting +system might make use of the attribute to provide special reports. + +<div class=code><pre> +[AttributeUsage(AttributeTargets.Method, AllowMultiple=false)] +public class CriticalAttribute : CategoryAttribute { } + +... + +[Test, Critical] +public void MyTest() +{ /*...*/ } +</pre></div> + +</div> + +<!-- Submenu --> +<div id="subnav"> +<ul> +<li><a href="index.html">NUnit 2.5.5</a></li> +<ul> +<li><a href="getStarted.html">Getting Started</a></li> +<li><a href="assertions.html">Assertions</a></li> +<li><a href="constraintModel.html">Constraints</a></li> +<li><a href="attributes.html">Attributes</a></li> +<ul> +<li id="current"><a href="category.html">Category</a></li> +<li><a href="combinatorial.html">Combinatorial</a></li> +<li><a href="culture.html">Culture</a></li> +<li><a href="datapoint.html">Datapoint(s)</a></li> +<li><a href="description.html">Description</a></li> +<li><a href="exception.html">Exception</a></li> +<li><a href="explicit.html">Explicit</a></li> +<li><a href="ignore.html">Ignore</a></li> +<li><a href="maxtime.html">Maxtime</a></li> +<li><a href="pairwise.html">Pairwise</a></li> +<li><a href="platform.html">Platform</a></li> +<li><a href="property.html">Property</a></li> +<li><a href="random.html">Random</a></li> +<li><a href="range.html">Range</a></li> +<li><a href="repeat.html">Repeat</a></li> +<li><a href="requiredAddin.html">RequiredAddin</a></li> +<li><a href="requiresMTA.html">Requires MTA</a></li> +<li><a href="requiresSTA.html">Requires STA</a></li> +<li><a href="requiresThread.html">Requires Thread</a></li> +<li><a href="sequential.html">Sequential</a></li> +<li><a href="setCulture.html">SetCulture</a></li> +<li><a href="setup.html">Setup</a></li> +<li><a href="setupFixture.html">SetupFixture</a></li> +<li><a href="suite.html">Suite</a></li> +<li><a href="teardown.html">Teardown</a></li> +<li><a href="test.html">Test</a></li> +<li><a href="testCase.html">TestCase</a></li> +<li><a href="testCaseSource.html">TestCaseSource</a></li> +<li><a href="testFixture.html">TestFixture</a></li> +<li><a href="fixtureSetup.html">TestFixtureSetUp</a></li> +<li><a href="fixtureTeardown.html">TestFixtureTearDown</a></li> +<li><a href="theory.html">Theory</a></li> +<li><a href="timeout.html">Timeout</a></li> +<li><a href="values.html">Values</a></li> +<li><a href="valueSource.html">ValueSource</a></li> +</ul> +<li><a href="runningTests.html">Running Tests</a></li> +<li><a href="extensibility.html">Extensibility</a></li> +<li><a href="releaseNotes.html">Release Notes</a></li> +<li><a href="samples.html">Samples</a></li> +<li><a href="license.html">License</a></li> +</ul> +</ul> +</div> +<!-- End of Submenu --> + + +<!-- Standard Footer for NUnit.org --> +<div id="footer"> + Copyright © 2009 Charlie Poole. All Rights Reserved. +</div> +<!-- End of Footer --> + +</body> +</html> |