Automated
From KDE-HIG_Wiki
| Table of contents |
Automated HIG Checks in KDE
In december, there will be a workgroup meeting in Hamburg/Germany to discuss the possibilities of automated tests on HIG conformity.
This page servers as a container to list possible test criteria.
Menus, Context Menus and Toolbars
Menus
Menubar:
- Sequence of items in the menu bar
- check that items in menubar consist of a single word only
Menus:
- Items in correct menus?
- Sequence of items in the menus
- Max 15 items in a toplevel menu?
- Grouping correct (max 4 in a group)?
- Number of menu levels max 2?
- Menu sizes correct (min 3)?
Menu items:
- Ellipses used?
- Unavailable items disabled?
- No toggle command items?
- Standard icons?
Context Menus
Availability:
- All context menu items in the menus?
Context menus:
- Left or Double Click action corresponds to first item?
- First entry not delete (or the like)
- Item subgroups correspond to menu item groups (even if items may be missing)?
... rest see above!
Toolbars
Availability:
- All toolbar items in the menus?
Toolbars:
- Item subgroups and their order corresponds to the menus?
- Grouping correct (max 4 in a group)?
Toolbar items:
- Tooltips available?
- For exclusive options: Rather drop-down than toggle buttons.
- Toggle buttons for max 2 exclusive options, separated from other toolbar items
Text and Icons:
- Toolbar texts not too long?
Accessibility
Accelerators:
- For all items?
- No collision?
- If possible: Standard Accelerators
Shortcuts:
- Standard shortcuts?
- No collisions (internally)?
- No collisions (with general shortcuts)?
Layout and Visual Design
Groups of Options or Settings:
- Max 8 in a group, otherwise subgroups (determine via padding?!)
Padding and Alignment:
- Padding to border?
- Left-alignment in each column
- Right-adjustment in each column
- Indent of all subgroups equal?
Margins:
- each widget should use exactly one margin of width KDialog::marginHint() Its a common problem that a widget and a container widget both set a margin making the widget use double the blank space around it. Widgets should also use the global margins instead of the hardcoded ones.
Text:
- Capitalization correct?
Dialog Behavior
Dialog Depth
- There should not be more than 3 to 4 (?) levels of dialogs
Modality
- Check for application-modal dialogs and list them for the developer to evaluate if application-modality is really of need.
- Possibly test if options in a dialog can refer to the selected element (document, tree node, etc) only, or to any element.
Focus
- Are dialogs always in front of their parent?
Check especially the following points:
- Dialogs in non-KDE applications (e.g. File Open in OOo with KDE Plugin)
- PGP Password dialog, e.g. in KMail (blocks application, but sometimes hidden by other windows) -> In general, there are problems when there is an interaction between two applications.
- Dialogs open on another desktop than main window
Feedback
Response Times
- Is there any kind of visual feedback for response times > 1 second?
- Check for response times > 10 seconds and list them for the developer to evaluate if they are really of need.
Success and Error Feedback
- Can this be tested?
Drag and Drop Feedback
- Are there ways to provide specific dnd feedback? If so: How to test it?
Other feedback dialogs
- An application that locates itself in the systray must not do so at initial startup, and should provide a message informing the user about the fact that it is located there.
- Applications that do not quit but run in the background when closing the window should provide a message.
- Welcome screens (?)
Help
Context Sensitivity
- Do Help buttons in a dialog open the correct chapter in the documentation?
- Percentage of help buttons in the dialogs (?)
Embedded Help
- Percentage of buttons, labels, options with tooltips versus no tooltips in the whole application (?)
- Percentage of options with tooltips in the settings dialogs
What's this
- Check for available What's this help
Interaction
Error Recovery
Undo:
- All actions undoable?
Inactivity
- Non-available functions, buttons, etc. are marked as inactive.
- Buttons and functions that are never available are non-existent.
Accessibility
Tab Sequence:
- All elements reachable per tab?
Color Schemes:
- Color schemes apply to all ui elements (line edits, text areas, ..)
Usability Bug Regressions
We are collecting a number of issues to test for in order to avoid usability regression bugs (things that worked in a previous version). Example: Konqueror not focusing the address bar after start-up in KDE 3.5.
Please add your testing criteria on an extra page: Usability Bug Regressions
