The following features, changes and bug fixes are included
in theTestSmith Beta 3 release.



FEATURES: additional functionality, GUI updates, fine-tuning
  1. Windows Control Object Commands
    Interaction with certain native Windows controls, i.e. Buttons, Check Boxes, Static Items and Edit Boxes, are now recorded as 'ctrl' commands. This allows interaction with these objects on playback which is independent of mouse or keyboard action.


    Information on these items can be found in the CTRL section of the commands.html user help file.

  2. Easier Text Validation
    A Ctrl+LeftClick action on an Edit control will now result in a command being recorded for the existing text in that control. This does not require any text selection.
    Additional, non-standard Editable controls are also supported for this command. The list of classes representing Edit controls is taken from the EDIT_CLASS_NAMES advanced setting. This setting can be customized as required. Details are in the testsmith.settings text file. The classes supported by default are:
    • Edit - the standard Windows Edit control (also used in Notepad)
    • RICHEDIT - the standard Windows Rich Edit control


  3. Comment/Uncomment Blocks of Text in a Script File
    Two additonal items have been added to the Script/Edit menu:

    • Comment Block [Ctrl+B]
    • Uncomment Block [Ctrl+U]

    These commands allow an entire selected block in a script file to be commented out (or uncommented) in one go.
    Information on these items can be found in the Windows Help File, accessible from the Help menu, or by pressing the F1 key.

  4. Context-Sensitive Help for all Script Commands and Parameters
    Holding the Alt key down and double-clicking on a command name or parameter name in a TestSmith script will cause a jump to the appropriate help topic in the User Guide. This allows quick lookup as and when needed for all TestSmith script commands and parameters. Clicking on any other word in a script will have no effect.

  5. Fail Text parameter for HTML pages
    A new parameter, hfailtext, has been added for use with html commands. The value of this parameter is the text that will cause an immediate ERROR to be returned if it is found (anywhere) on the page. This allows for the http request to result in an error page, e.g. a 404 page, and prevents the zsync parameter from performing mulitiple searches of the page to try to match text that is never going to be there.
    See also the fuzzy version of this parameter.

  6. Additional Advanced Settings
    The following advanced settings have been added. Information on these settings can be found in the testsmith.settings text file.
    • EDIT_CLASS_NAMES  -  used by the valEditText command
    • REPORT_REFRESH  -  toggle switch for report refreshing
    • TIMESTAMPXXXX  -  6 different timestamp settings for entering or comparing dates and times during a playback

[return to top]




CHANGES: redesign of existing functionality
  1. Visible, timed Mouse Drags
    When the mouse is dragged to scroll a window, move an object or select a block of text, the mouse movement will now be reflected in 'real-time'. Previously the mouse down would occur, followed by a wait period, followed by a mouse up and the destination point. Now the path of the mouse from one point to the other over a period of time as determined by the mtime parameter, can be seen.
    In most cases this does not add anything to a playback (except visual satisfaction) but in the case of draging items in a Flash (or similar) object, the actual travelling of the object may be significant in terms of the object's reaction, and subsequent behaviour.

  2. valBitmap Commands Additional Parameter
    valBitmap commands now have the vvariation parameter recorded with a default value of 1000. Previously, this parameter was not recorded.
    This parameter allows some flexibility in matching bitmaps, and is especially useful when matching portions of a Flash object, as the color range of the object can vary slightly from one playback to the next. (See also quirk #11.)

  3. Example script updated
    The 'datasample.smith' script has been renamed to 'datadriver.html'. It calls the two scripts, 'datacall-1.smith' and 'datacall-2.smith'. All these scripts now use the ctrlEditSetText command, instead of the kbText command to enter the text.

[return to top]




BUG FIXES: the following bugs have been resolved  [ late fixes here ]
  1. FILE INPUT elements fail on playback
    Recording a click on the 'Browse' button of a File Input element (<INPUT type=file>), fails to playback. The element is selected, but the File Dialog box does not appear.

    Status: Fixed

  2. TestSmith crashes when playing a script back multiple times.
    This happens when the html report that is generated gets too large. The auto-refresh of the report happens once every 500 milliseconds but if the refresh itself actually takes longer than that, the following refresh call tries to refresh a document that isn't there. Hence the crash.

    Status: Fixed

  3. Fuzzy Matching on html elements never fails
    Using the parameters hname~, hvalue~, hhref~, hvistext~ and hhtml~ to achieve a fuzzy-match will always result in a match being made, regardless of the value passed.

    Status: Fixed

  4. INPUT elements not found on playback
    Some <INPUT> elements are recorded with a missing value. The 'hvalue' parameter on certain 'html' commands is being recorded as hvalue=%00, rather than with the correct text value, resulting in the element not being found.

    Status: Fixed

LATE BUG FIXES: added to beta-3 (03-06-17)
  1. Line numbers in reports are sometimes inaccurate
    If a command is formatted across multiple lines and contains blank lines or full-line comments the line number shown in the report is the line number of the last blank line or comment, not the line number of the start of the command.

    Status: Fixed

[return to top]