因为右键菜单由用户点击鼠标左右键或者别的动作才能调出来显示给用户。无法清晰的显示给用户,所以对应选项应该可以通过别的途径得到的。 用户交互
? 要使一个功能有时允许有时不允许用户使用,则这个控件的不能随便隐藏,应该使用
disable属性进行表示,以免用户发现控件失踪后措手无策。
? 窗口弹出位置要明显,点击一个控件,弹出窗口或者菜单,应该给人明显提示。对于弹
出窗体,统一要求显示位置在屏幕中央,要求窗体是以模态显示,并且不出现在任务拦上。
? 执行动作要有提示。UI作为人机对话的工具,用户做了任何动作,应该给用户一个视
觉或者听觉、触觉提示。而且这个提示应该行明显,但不应提示过长,可以有以下几种方法:弹出交互对话框让用户点击确认;改变UI中控件参数提示:(处理不用用户确认的提示,有一定延时,或者用户按键后自动清除。);改变标题栏字符串,显示“信息:提交成功”,或者专门设置一个状态栏、TLable等用来进行提示。 图形用户界面的一些业界标准
? 关闭应用时应有信息窗提示用户确认:“您确认要退出***吗?”; ? 试图同时打开两次应用时不允许;(一般而言)
? 所有的屏幕都应响应帮助【F1】键且做同样的工作(显示相应的帮助信息)。 ? 使用【Tab】键在窗口中移动光标/焦点,使用【Shift】+【Tab】组合键回移; ? 如果一个按钮能产生一个新窗口,则它不应该盖住先前的窗口,并能回到先前的窗口中; ? 一般情况下,窗口中的所有事情应该既能用鼠标又能用键盘来完成 通用界面元素设计
? 单选框用左右键和上下键移动,以及鼠标单击选中。单选框是一种多先一设置,可先数
目在2-8之间。当空间不够时,单选框可以用循环按钮、下拉菜单、滚动列表来代替。 ? 复选框在框中用鼠标单击,以及空格键来实现在文本上设置/取消设置; ? 复选框按选择几率的高低而先后排列; ? 复选框要有默认选项,并支持【Tab】选择
? 除确定(ok)或取消(Cancel)外,其他的按钮应有一个字符代表,这个字符在按钮上
是以下划线表示的,用[ALT]+字符组合键的方式可激活它,保证不重复定义这类字符; ? 命令按钮如果能导出一个新的窗口,使用户能输入或改变内容,刚按钮的文字后面带省
略号(3个小点)
? 用[Tab]走到这个按钮后,按【空格】或【Enter】键应能激活; ? 用[Tab]移到其他类型的控制按钮(非命令),则在屏上这个控制钮以加宽黑框表示,这
时按Enter应能激活这个控制钮; ? 按[Esc]键应能激活[Cancel]钮。
? 按下拉列表框右边的箭头处,应能得到(打开)选择列表项,列表项可以卷动(当内容
多时应有卷动条),其框中应不能输入文本。
? 既要可以输入文字,又要可以在列表中选择,可以用联合框。 ? 按一个字符应到以这个字符开头的项(英文时),按【Ctrl】+【F4】组合键应能打开下
拉列表框。
? 下拉列表框中的选项应是排好了序的 菜单的设计
? 菜单功能是否正确执行; ? 常用菜单要有命令快捷方式。 ? 文本字体、大小和格式是否正确;
? ? ? ?
菜单功能的名字是否具有自解释性;
右键快捷菜单是否采用与菜单相同的准则; 是否适当地列出了所有的菜单功能 是否根据系统功能进行合理分类,将选项进行分组(完成相同或相近功能的菜单用横线隔开放在同一位置。);
? 菜单深度是否控制在3层以内
? 菜单标题是否简洁、有意义;菜单前的图标能直观的代表要完成的操作,如不能则不要
用图标。
? 是否依使用频度排列;是否依逻辑顺序排列;是否依使用顺序排列; ? 各级菜单显示格式和操作方式是否一致。 系统响应时间
? 对可能造成等待时间较长的操作最好提供取消功能
? 系统响应为2-10秒,鼠标显示成为沙漏;10-18秒时,由微帮助来显示处理进度;18
秒以上时,显示处理窗口或显示进度条。
? 对可能造成等待时间较长的操作最好提供取消功能(如果可能的话)
? 当一个长时间的处理完成时应发出一个提示警告声如beep(1),这样用户不必总看着屏
幕 消息框
? 标题:建议以主窗口的名称作为标题,以变量的形式显示,最好不要写死。(标题是否
根据内容显示为“提示”,“警告”)
? 文本:不考虑国际化开发时,可以直接以中文显示,考虑国际化开发时,需要根据字串
取本地化文本。请注意提示信息的语气及标点符号。
? 按钮:当有多个按钮时,执行删除操作时,默认按钮应为否(取消)。
? 符号:根据提示的内容,确认图标的显示:关键消息(系统出错)时显示;警告询
问(提问)时显示
;警告消息(用户的错误操作)时显示
;通知消息(一般提示)
时显示。 确认正确性
? 输入或操作有问题时,是否给用户一个恰当的信息
? 输入非法值并单击了【确认】按钮后,是否会出现报错信息
? 对于数据域,检查负数是否能输入;检查最大值、最小值以及中间值是否允许 ? 对字符/字母域检查是否有一个特定的限制 ? 检查必输域是否需要用户输入
? 必输域对应的数据库表字段是否不能为空 导航测试
? 通过菜单是否可以进入应用屏(窗口); ? 通过工具条是否可以进入应用屏(窗口); ? 通过父窗口中的按钮是否可以进入子窗口; ? 当窗口激活时,窗口模式是否正确;
? 同时能打开相同应用窗口的数量是否符合要求 元素易用性测试
? 窗口中下拉表中的项目排序是否正确; ? 测试日期输入的正确格式;
? 窗口中的按钮是否都有适当的快捷键;
? 快捷键的工作是否正常;
? 菜单中的选项是否定义了快捷键;
? 只读域应不在TAB键能达到的序列中; ? 非激活域应不在TAB键能达到的序列中;
? 【重置】和【清空】等按钮不应该对不可编辑的域进行操作 ? 用鼠标点出文本框,是否会出现帮助信息; ? 用鼠标单击只读域,是否能进入;
? 当打开窗口时,光标/焦点应位于第一个可输入域; ? 窗口中是否有缺省的按钮定义; ? 缺省按钮的工作是否正常;
? 当错误信息确认时,焦点是否会回到出错的域;
? 使用【Alt】+【Tab】组合键从一个应用到另一个应用切换时是否有冲突; ? 编辑框域是否指示了字符的长度; 数据完整性测试
? 关闭窗口时数据是否得到了保存;
? 检查域的长度,以保证没有字样被截掉;
? 有的域是通过在数据库中查询一个值作为缺省值,并且用户可以输入一个有效值来取代
这个值;
? 检查能接受负数的数字域能将负数正确的存储; ? 一组单选按钮是否由一组值代表(在数据库中);
? 数据库对数据的存储是否完整,如字符串是否被截,数值是否被舍入。 只读模式的测试
? 只读模式屏幕和域的颜色设置是否正确;
? 只读模式是否合乎实际(这种情况下,是否应设为只读模式); ? 字段域和控制按钮是否以只读模式来表示非激活; ? 与正在进行的操作无关的按钮应加以屏蔽(只读模式) ? 从窗口/菜单/工具条的只读模式是否能进入下一级窗口; ? 从只读模式进入的窗口是否有效; ? 只读模式下不能执行或进行“确认”; 通用性测试
? 保证有“帮助”菜单的存在;
? 保证在每个菜单中有适当的命令或选项; ? 保证工具条中的所有按钮对应一个命令; ? 保证每个菜单命令有一个热键方式; ? 在下拉列表中,保证值不被截断;
? 在下接列表中,保证表中的条目能通过适当的键或热键联合来存取; ? 窗口中没有重复定义的热键;
? 保证【Esc】键的正确使用(常用于“取消”),应有类似的提示:“更新的数据将丢失是
否继续?”;
? 保证“取消”按钮的功能同[Esc]键;
? “取消”但不能回退(已作的变化不能回退)时,应相当于“关闭”; ? 保证隐藏于当前屏幕后面的命令按钮不能工作;
? 当一个命令按钮应根据情况来确定是否能使用时,应保证在不能使用时变灰; ? 保证“确认【OK】”键和“取消【Cancel】”键按钮成对,并与其它命令按钮分开;
? ? ? ? ? ?
保证命令按钮名字清楚;
保证字段域的标签或名字不过于专业性,而是对系统的用户有意义的; 保证命令按钮有相似的大小和形状,相同的字体和字体大小; 保证每个按钮能通过热键盘方式来访问;
保证命令按钮在同一个窗口/会话框中不会重复;
保证每个窗口/会话框中元素(命令按钮、其它元素)在按回车键时,有一个清晰的缺省值响应回车;
? 保证对象/按钮的设置对应于窗口/会话框需要的功能;
? 保证可选按钮(包括单选项、复选项、以及选择框)的名字清楚; ? 如果热键用于访问可选键,保证在同一窗口/会话框中,热键不重复; ? 保证选择窗、选择按钮和命令按钮被逻辑地组在一起,形成功能“组”; ? 红色不用于加亮被激活的元素(色盲中最常风的为红-绿色盲); ? 保证屏幕/窗口中的展现与分布不混乱;
? 在表窗口中【Ctrl】+【F6】组合键打开下一个表;
? 在表窗口中【Shift】+【Ctrl】+【F6】组合键打开先前的表(回到先前的表); ? 在当前表的最后域中,用【Tab】键可以打开下一个表;
? 在最后表的最后域中,用【Tab】键可以走到【继续】按钮中; ? 在窗口中间件【Tab】键可走进下一个可编辑框; ? 当列表框中的选项少于8项时,不必用滚动条;
? 当系统“继续”发现错误时,应回到出错的域或表; ? 对表中的域输入正确前,按[继续]按钮不起作用; ? 打开一个表时,焦点落入第一个可编辑域; ? 所有字体一致;
? 【Alt】+【F4】组合键将关闭表窗口,回到主屏幕或先前的屏幕,必要时有提示信息:
如“更新的数据将丢失”;
? 对于激活的域和挖掘有简单的帮助文本; ? 保证所有非激活域是只读模式。 特殊域的测试之日期域
? 保证闰年日期有效正确,不产生错误和计算误差; ? 测试月份是在1和12之间(含),其它数值报错; ? 测试日期在1和31之间(含),最大值与月份相关; ? 对二月的28,29,30日,进行验证; ? 测试日期的周期性计算正确。 特殊域的测试之数字域
? 保证对最低、最高值处理正确; ? 输入无效的数据值被记录和报告; ? 保证有效的值被正确地处理
? 在数字前面带有空格的数字域被正确处理还是报错误; ? 在数字后面带有空格的数字域被正确处理还是报错误; ? 保证正、负值被正确处理; ? 保证除零的事不会发生; ? 数字域范围至少含有一个值 ? 数字域范围含最大值和最小值
? 对范围外的值进行测试,保证错误值能被检测出来。
特殊域的测试之字符域
? 测试使用空格和非空格字符; ? 测试最高值和最低值 ? 测试非法字符或控制符 ? 测试合法字符
? 测试第一个位置是空格的数据或最后一位置是空格的数据。
8. 测试结果评审
所有功能的验证:提交功能性测试报告。
验收测试:根据需求有设计说明书,对需求及设计说明书中的内容进行验证。提交验收测试报告。
极限测试:文件破坏、数据错乱、大数据量、死机、CPU内存耗尽、硬盘写满、不符逻辑、大量错误数据引起的日志文件过大、系统崩溃等等。
9. 中试结果评审
? ? ? ? ?
是否实现了所有计划的功能 是否达到了预定的性能指标 界面是否令人满意 用户体验是否良好
工程实施是否简单、易操作
10. 版本发布
? ? ? ?
版本发布要得到研发中心的认可 版本发布的文档包括:
编写:安装使用说明书、常见问题解答。 整理:开发设计任务书(或者需求说明书)、概要设计(功能细化、数据库设计及说明、UI界面设计)、过程控制文档(代码编写过程中重要的逻辑或者数据说明)、测试文档。 ? 版本发布的产品:用户安装的使用光盘、使用说明书。 ? 所有与产品相关源代码备份。