FitNesse is a web application, therefore all of it's functions can be accessed by passing it URLs. The structure of FitNesse urls is very simple.


Responders

name inputs description
addChild Creates a new child page beneath the selected page
pageName The name of the page to be created.
pageContent The contents of the new page.
pageTemplate If present must point to a valid wiki page. The new page will have the same properties as the referred page.
pageType If present must be {Test, Suite, Static} and sets the page type accordingly. Otherwise page type is set based on the name of the page as usual. This option does nothing if the pageTemplate option is set.
compareHistory Generates a report comparing two test results.
TestResult_yyyyMMddHHmmss_rr_ww_ii_xx.xml One of the files to be compared. Always two there are.
createDir Create a new directory in the files section. The directory will be created below the resource
dirname The name of the directory to create
deletePage Deletes the specified page.
confirmed=yes Bypasses the confirmation screen.
deleteFile Deletes a file in the files section. The resource is the directory in which the file exists.
filename the name of the file to be deleted.
edit returns the edit screen for a wiki page. The save button invokes the saveData responder.
redirectToReferer instructs the edit responder to pass the redirect input to the saveData responder. The input is constructed from the Referer header and the redirectAction input and has the form referer?action.
redirectAction=action see above.
nonExistent Causes the edit responder to load the edit window with default page contents and changes some message from edit to create
executeSearchProperties Returns a list of pages that match the search criteria
pageType a list of page types to include in the search {Normal, Test, Suite} or the word "Any"
Suites a comma seperated list of tags (as used by the suite responder) to include in the search
Action a list of actions {Edit, Versions,Properties, Refactor, WhereUsed, RecentChanges, Files, Search} or the word "Any" to include in the search
ExcludeSetUp Exclude setup pages from the search.
ExcludeTearDown Exclude teardown pages from the search.
ExcludeObsolete Exclude pages with the "skipped" attribute selected from the search.
files Displays a directory in the files section. The resource is the directory to be displayed.
getPage View the selected page
dontCreatePage if present, will prevent the responder from attempting to create a page if it doesn't exist.
key=value If present creates a markup variable with key as name & value as value. key and value can be any string values. Multiple pairs can be specified.
import Imports a page hierarchy from a foreign FitNesse
remoteUsername The user name to log in as (optional)
remotePassword The password to use (optional)
remoteUrl The url to the complete pathname of the parent page to be imported.
autoUpdate If present, will cause a re-import of changed pages whenever a test is run.
importAndView imports (if necessary) and views the selected page.
movePage moves the selected page below a different parent.
newLocation The full path name of the page that will be the new parent.
names Displays a list of the pages at the current level. If no page name is supplied, then the list is all the pages at the top level. Otherwise it is the list of direct children (not grandchildren) of the supplied page.
format=json returns the list as a JSON array
Recursive prints also child, grand-child, ... pages
LeafOnly in combination with the "Recursive" option prints only leaf pages that don't have further children
ShowTags prints the tags associated with a page in []-brackets, e.g., [hello][world]
ShowChildCount adds the count of children to each page name after a space.
new Like edit, but used for new pages.
pageTemplate Define a page to use as a template for the to be created page
pageType If present must be {Test, Suite, Static} and sets the page type accordingly. Otherwise page type is set based on the name of the page as usual. This option does nothing if the pageTemplate option is set.
packet Returns a json packet containing all the tables on the page. See: RestfulPackets
jsonp=function Wraps the json packet into a function call for JSONP, see: RestfulPackets
pageData Returns the raw wiki-text of the page.
pageHistory Displays the test history of the specified page.
resultDate if present the date (yyyyMMddHHmmss) of the test to show, or the word "latest". Otherwise show a list of all dates for this page.
format=xml Returns an XML report. See: >Page History Xml and RestfulTests
properties Displays the properties form for the selected page.
format=json shows the properties in JSON format See >Json Properties
purgeHistory Purges old test history files
days The number of days of history to preserve
raw returns the raw wiki-text of the selected page
refactor Displays the refactoring screen.
renameFile Renames a file in the files section. The resource is the directory that contains the file.
filename the file to be renamed.
newName the new name of the file.
renamePage Renames the selected page.
newName The new name for the page. Must be a simple wiki word without any dots. You can't use this responder to move a page!
rollback Rollback the page to the selected version.
version The version identifier of the version to rollback to. See: viewVersion
rss Returns an rss feed for the current page and all it's children. See RssFeed
saveData Saves the data for a wiki page. Usually called by the edit responder. Usually invoked as a POST. If the ticketId and saveTime suggest that a merge is needed, this responder will return the merge form without doing a save.
pageContent The content to be saved into the page.
editTime The time (in milliseconds) that the page was fetched for this edit. Used to determine whether or not a merge is needed. (Optional)
ticketId A random number associated with the edit session. Used to determine whether or not a merge is needed. (Optional)
redirect The URL to redirect to after the page is saved.
saveProperties Saves the properties for the selected page. Usually called from the properties responder. Usually called as a POST.
pageType Must be one of: {Normal, Test, Suite}, sets the page type.
attribute Must be one of: {Edit, Versions,Properties, Refactor, WhereUsed, RecentChanges, Files, Search, Prune} These are booleans. If present they will be set. If absent they will be reset.
Suites a comma seperated list of tags used by the suite responder.
HelpText The help text that can show up in TOC listings.
search Searches for pages that match the query. Returns an HTML table of results found.
searchString The string to search for. This is a string, not a regular expression.
searchType May be "title" or "content". If "title" then searches for pages whose names contain the searchString, otherwise searches for pages whose content contains the searchString.
searchForm Returns the search form that allows users to specify a search.
shutdown Shuts FitNesse down.
stoptest Stops running tests.
id If present, is the process id of the test to stop. Otherwise stops all running tests.
suite Runs a suite of tests. The tests run are all those below the wiki page that are marked as tests. Returns a suite report.
format=xml See >Restful Suite Xml Format
format=junit Produces simple jUnit XML format
debug See test
remote_debug See test
suiteFilter A comma separated list of tags. If present only tests that one or more of these tags will be run.
excludeSuiteFilter a comma separated list of tags. If present only test that DO NOT have any of these tags will be run.
firstTest if present, only tests whose full path names are lexigraphically greater (later in alphabetical order) will be run. This is of questionable use since tests are not guaranteed to be run in any particular order.
nohistory Do not generate test history files when running the suite. Don't use this with format=xml since xml reports depend upon history.
includehtml If format=xml then this will cause the XML to contain a 'content' tag that holds the HTML of the tested page. Beware, this can lead to OutOfMemory errors for large suites.
key=value If present creates a markup variable with key as name & value as value. key and value can be any string values. Multiple pairs can be specified.
symlink Creates a symbolic link between pages in the same FitNesse
removal If present is the name of a symbolic link to be removed.
rename If present is the name of a symbolic link to be renamed.
newname The new name of the symbolic link being renamed.
linkName If present is the name of a new symbolic link to be added to the page named by the resource.
linkPath The path that the link refers to.
test runs a test on the specified page, returns result in html
format=xml Returns results in XML. See RestfulTests
debug (Only works for Java fixtures.) Attempts to run the test in the same JVM that FitNesse is running in. Allows you to attach a debugger to your fixtures before you run the test.
remote_debug Causes the REMOTE_DEBUG_COMMAND and REMOTE_DEBUG_RUNNER variables to be used in place of COMMAND_PATTERN and TEST_RUNNER when creating the command to execute the test. See CustomizingTestExecution for defaults
key=value If present creates a markup variable with key as name & value as value. key and value can be any string values. Multiple pairs can be specified.
testHistory Displays the current test history below the selected page, or all history if no page is selected.
format=xml Returns an XML report of test history. See >Test History Xml
upload Upload a new file into the files section. The resource is the directory into which the new file will be stored.
file An object of type fitnesse.http.UploadedFile
versions Returns the form that shows the saved versions of the wiki page
viewVersion Shows the selected version of the wiki page.
version The version identifier. The version identifier is just the name of the zip file (without the .zip) that holds the version. The format of this file name is (generally) user-id-yyyyMMddHHmmss where user might not be present.
whereUsed Returns a list of pages that contains references (links) to the selected page

* nochunk can be added to many urls to turn off chunking. This is most useful for test and suite urls when writing programs to parse the output.