FitNesse. UserGuide. TestSuites.
TagsAndFilters [add child]

Suite Tags


The properties page offers a field labeled Tags where you can enter a comma-separated list of keywords. These keywords can then be used as targets for searching and executing those tests.

Searching for tags

If you hit the Search button, You will see a form that allows you to search for pages that certain attributes or tags. For example, you can search for all subpages that have the Suite property set, or all pages that are read-only, or that have the Edit button displayed. Most importantly, you can search for pages marked with tags.

If you put a comma separated list of tags into the Tags input box, and then search, you will be shows a list of pages that are marked with any of those tags. Notice that if the pages are tests or suites, they have a link next to them that allows you to execute them. Also, look at the bottom and see the useful text that can be copied and pasted onto other pages in order to repeat the search or test the resulting pages.

Using these tools, you can easily tag some tests as "smoke" tests, or "critical", or "fast". You can find all the "smoke" tests and run them, etc.

Using tags to select which tests to run.

The easiest way to execute tagged tests is to search for the tags as described in the previous section. Sometimes, though, you'd like to execute the tests via a RESTful service, or from the command line (using TestRunner[?]).
You can execute the tests that match a tag by using the suiteFilter query parameter with a suite url like this:
http://<host>:<port>/<suite path and test name>?responder=suite&suiteFilter=smoke,critical

If you want to execute all the tests in a suite except those with a particular tag (eg NotRunningOnHudson) then you use the excludeSuiteFilter query parameter: For example:
http://<host>:<port>/<suite path and test name>?responder=suite&excludeSuiteFilter=NotRunningOnHudson

Typically, you will need only a few of such filtered suites, so it is suggested to build a link on the front page or so which contains the respective suite filter parameters. (If you simply click on the Suites button to run a suite, the suiteFilter is not set, so all tests in the respective subwiki are run.)

Executing test starting with a certain test.

Sometimes half the suite will run okay, but after a point all tests will start failing. In that case you can save time re-running the tests by stating which test you would like to start with. For instance:
http://<host>:<port>/<suite path and test name>?responder=suite&startTest=TestTwo will run all tests coming after TestTwo

Remember, that the order tests run is alphabetical. So in the above example, TestThree will not run because TestTwo actually comes after TestThree