TestCases Web
If you are here, you want to test this version of TWiki. This web is held in the TWiki Subversion repository, so:
- You must manually ensure that all topics in this web are readable and writable by the apache user
- New topics must be manually added to the Subversion repository.
- Only check in
.txt
files. You must not check in ,v files. Topic histories will be maintained in Subversion.
- If you use TWiki to edit topics (recommended) you must:
- Fix the
META:TOPICINFO
of all topics in this web so that the author
is TWikiContributor
and the version
is the SVN keyword $Rev$
. The tools/fixtopicmeta
script is a handy utility to fix the meta data.
- Remove all ctrl+M's before checking in.
The integration testcases are an important assistant to TWiki testing. However they should
not be regarded as the only required testing; manual testing, by a user interacting with TWiki, is also key, as are unit tests.
Integration testcases are of two kinds; manual, and automatic. Automatic testcases are
strongly preferred.
Each integration testcase consists of a single topic, always named TestCase
Something where
Something is descriptive of the testcase. For example,
TestCaseAmISane
. If
Something starts with
Auto
then the topic is assumed to be an automatic testcases and it is automatically added to the table below with a
run
link e.g.
TestCaseAutoFormatting
All testcase topics should contain a line starting with
Description:
that describes what the testcase does, for the table below. It's also convention to credit the designer(s) of the testcase, on a line starting
Designed by:
.
Other topics may be created to provide test fixtures, but all checked-in topics in this web should be regarded as read-only i.e. no test should require the
overwriting of any of the checked-in topics. If you need to create topics in order to execute a test, please do so, but delete them after you are finished to avoid any risk of polluting future tests.
Manual testcases simply document a series of steps that have to be performed to execute the test, sometimes with links in to help the process (for an example see
TestCaseAmISane).
Automatic testcases are designed for testing TWiki rendering. They can be visited and manually checked just like manual testcases, but also include markers that indicate to the
TestFixturePlugin what is
expected output versus what TWiki
actually produces. See
TestFixturePlugin for details, and view
TestCaseAutoFormatting raw for a good example. Automatic testcase topics should also contain a link that allows the testcase to be run:
[[%SCRIPTURL%/view%SCRIPTSUFFIX%/%WEB%/%TOPIC%?test=compare&debugenableplugins=TestFixturePlugin&skin=pattern][run this test]]
Automatic testcases may be run by clicking on the
run
link for the testcase in the table below. The testcases are run with
no plugins enabled.
Plugins do not ship with test cases in the TestCases web. It is possible to create a test case topic in the TWiki web (and thus ship it with a plugin for manual testing), and include that in an TestCases topic. For example the
TestCaseAutoSpreadSheetPlugin topic includes the test cases from
TWiki.SpreadSheetPluginTestCases.

A good tip is to right-click each
run
link and open in a new tab. That way you can run a whole bunch of testcases quickly without having to wait for each to finish loading.
Testcase |
Description |
Tests |
TestCaseSpacedWikiWordPlugin |
visual test output from SpacedWikiWordPlugin. |
manual |
TestCaseDifferentSkin |
Visual inspection tests for different skins. |
manual |
TestCaseSaveContentWithoutEdit |
Verify the proper creation or revision of a topic without going through edit, along with the proper handling of URL params in the following cases: |
manual |
TestCaseCreateNewTopicWithTemplate |
Verify the correct creation of a topic from a template. |
manual |
TestCaseCreateNewTopicWithTemplateWithUrlParam |
Verify the correct creation of a topic from a template, where URL params are used to populate the text in the new topic. |
manual |
TestCaseSectionalInclude |
Verify that TWiki:Codev.NamedSectionalincludes are working |
manual |
TestCaseSectionalView |
Verify that TWiki:Codev.AddSectionParam is working |
manual |
TestCaseRestTest |
Verify that the rest script is working properly |
manual |
TestCaseJavaScriptAffectedStyles |
Verify CSS styles that are affected by javascript: twikiMakeVisible, twikiMakeVisibleInline, twikiMakeVisibleBlock, twikiMakeHidden |
manual |
TestCaseAutoNestedVerbatim |
verbatim tags should be nestable to at least two levels. |
run |
TestCaseWebListTag |
Tests for WEBLIST tag |
manual |
TestCaseAutoTOC |
tests for TOCs included from other topics and with funny deprecated syntaxes. |
run |
TestCaseAutoSearchSort |
Tests for the "sort" parameter in SEARCH. |
run |
TestCaseAutoMetaSearch |
tests for METASEARCH tags |
run |
TestCaseAutoIncludeAttachment |
Tests for inclusion of attachments |
run |
TestCaseEmbeddedTags |
Tests for handling embedded tag parameters |
manual |
TestCaseAutoVariableNames |
Testing the rules for variable names by mixing upper case, lower case, numerical and special characters. |
run |
TestCaseAutoRegionTags |
testcases for TWiki extension tags verbatim, noautolink and pre |
run |
TestCaseEmptyGroupTreatedAsNoGroup |
testcase for the bug reported as TWiki:Codev/InvalidALLOWWEBVIEWTreatedAsEmpty |
manual |
TestCaseAutoTableInclude |
Testcase covers Bugs:Item4439. Companion topics IncludeTableAttachment and IncludeTableNoAttachment also required. |
run |
TestCaseAutoSpreadSheetPlugin |
Test SpreadSheetPlugin functions |
run |
TestCaseTopicListTag |
Test for TOPICLIST - rather huge, so in a topic on it's own |
manual |
TestCaseAutoCategoryTable2 |
Test for category table and attachment upgrading from 1.0beta |
run |
TestCaseAutoCategoryTable1 |
Test for category table and attachment upgrading |
run |
TestCaseInternalTags |
Test cases for internal tags NOT INCLUDING URLPARAM, SEARCH OR METASEARCH |
manual |
TestCaseAutoSearchWithInternalTag |
Tags embedded in the format option must expand correcly |
run |
TestCaseAutoInternalTags |
Tag tests that can be automated |
run |
TestCaseAutoFormatting |
Simple formatting, as described in TextFormattingRules |
run |
TestCaseAutoUnexpandedTagsInSearchResults |
Search results can contain tags. These tags must be correctly expanded in the output. |
run |
TestCasePluginsTags |
Plugins management tags |
manual |
TestCaseIncludedVerbatim |
|
manual |
TestCaseIncludedVerbatimData |
|
manual |
TestCaseTWikiJavascripts |
|
manual |
TestCaseTablePlugin |
|
manual |
TestCaseAmISane |
Manual trivial fast sanity checks for script functions. Do them in order, from the top down, as the save tests rely on eachother. |
manual |
TestCaseTemplatedTopic |
Manual test to check creation of topics with a template topic. |
manual |
TestCaseOopsAccessDenied |
Load message templates for review |
manual |
TestCaseOopsAlerts |
Load message templates for review |
manual |
TestCaseOopsAttention |
Load message templates for review |
manual |
TestCaseOopsLeaseConflict |
Load message templates for review |
manual |
TestCaseInternetRegistration |
Intranet Registration manual tests |
manual |
TestCaseIntranetRegistration |
Intranet Registration manual tests |
manual |
TestCaseAutoIncludeSubWebTopic |
include a topic from a subweb |
run |
TestCaseAutoEmphasis |
ensure emphases work correctly in different contexts |
run |
TestCaseAutoAttributeParsing |
ensure attribute parsing provides expected outcome |
run |
TestCaseAutoInOutPre |
check the behaviour of the inside and outside PRE handlers |
run |
TestCaseAutoIncludes |
Check for the correct detection and handling of recursive and repeated includes |
run |
TestCaseAutoInterwikiPlugin |
Basic tests for Interwiki plugin |
run |
TestCaseAutoSearch |
Automated search function tests. Results dependent on templates used to render search results. Tests only make sense when this topic is viewed with `pattern... |
run |
TestCaseAutoFormattedSearch |
Automated formatted search tests. |
run |
TestCasePageValidation |
A list of templates, with automatic testing on the W3C validation service - page will take long to load! |
manual |
TestCaseTemplate |
a brief description of the testcase |
manual |