Testing Design

From ParaQ Wiki
Revision as of 16:56, 26 October 2005 by Tshead (talk | contribs)
Jump to navigationJump to search

Requirements

  • Support easy testcase creation for user contributed tests.
  • Support playback and recording of testcases.
  • Support hand editing of testcases.
  • Test cases can be scripts (but we support a trivial "metafile" format, so we aren't dependent on any given script engine for testing).
  • Test commands are stored with a high level of abstraction instead of low-level events, to reduce test-case breakage (e.g. "button push" instead of "mouse down at x,y location").
  • Test commands still work if widget moves to new location in object tree (docking window can be top level or child), to reduce test-case breakage - implies a flat naming scheme for UI components.
  • Test commands not completely tied to type of object (spin box & slider bar represent the same thing & swapping them should make test work still).
  • Support verification - check that a line edit has the right text at a certain point in the test, or (more complex) retrieve data from VTK objects.
  • Support an inspector to navigate the object tree as an aid for hand-editing.

Design