GUI测试是功能测试的一种表现形式。不仅要考虑GUI本身的测试,也要考虑GUI所表现的系统功能的测试。
GUI应具有的要素
1.符合标准和规范
2.直观性
(1)用户界面是否洁净、不唐突、不拥挤?GUI不应该为用户制造障碍。所需功能或者期待的响应应该明显,并在预期出现的地方。
(2)GUI的组织和布局合理吗?是否允许用户轻松地从一个功能转到另一个功能?下一步做什么是否明确?任何时刻是否都可以决定放弃或者退回、退出?输入是否得到承认?菜单或者窗口是否深藏不露?
(3)有多余功能吗?软件整体抑或局部是否做得太多?是否有太多特性把工作复杂化了?是否感到信息太庞杂?
(4)如果其他所有努力失败,帮助系统真能帮忙吗?
3.一致性
(1)快捷键HOT-KEY和菜单选项。如:在Windows中,按F1键总是得到帮助信息, Ctrl+C、 Ctrl+V。
(2)术语和命令。整个软件使用同样的术语吗?特性命名一致吗?例如,Find是否一直叫Find,而不是有时叫Search?
(3)用户。软件是否一直面向同一用户级别? 例如:错误信息的内容应该针对用户的层次。
(4)按钮位置。WINDOWS对话框有OK按钮和Cancel按钮时,OK按钮总是在上方或者左方,而Cancel按钮总是在下方或者右方
(5)等价的按键。Cancel按钮的等价按键通常是Esc,而选中按钮的等价按钮通常是Enter。保持一致。
4.灵活性
(1)状态终止和跳过。当软件具有用户非常熟悉的超级用户模式时,显然能够跳过众多提示或者窗口直接到达想去的地方
(2)数据输入和输出。用户希望有多种方法输入数据和查看结果。为了在写字板文档中插入文字,可以用键盘输入、粘贴、从多种文件格式读入、作为对象插入,或者用鼠标从其他程序拖动。
(3)可用TAB键移动GUI上的焦点
5.舒适性
(1)恰当。软件外观和感觉应该与所做的工作和使用者相符。金融商业应用程序不应该用绚丽的色彩和音效来表现狂放的风格。
(2)错误处理。程序应该在用户执行严重错误的操作之前提出警告,并且允许用户恢复由于错误操作导致丢失的数据。
(3)性能。快不见得是好事。不少程序的错误提示信息一闪而过,无法看清。如果操作缓慢(如:进度条),至少应该向用户反馈操作持续时间,并且显示它正在工作,没有停滞(死机)。
6.正确性
(1)市场定位偏差。有没有多余的或者遗漏的功能,或者某些功能执行了与市场宣传材料不符的操作?
(2)语言和拼写。程序员知道怎样只用计算机语言的关键字拼出句子,常常能够制造一些异想不到的用户信息。
(3)不良媒体。媒体是软件UI包含的所有支持图标、图像、声音和视频。图标应该同样大,并且具有相同的调色板。声音应该都有相同的格式和采样率。正确的媒体从UI选择时应该显示出来。
(4)所见即所得-WYSIWYG。保证UI所说的就是实际得到的。当单击Save按钮时,屏幕上的文档与存入磁盘的完全一样吗?从磁盘读出时,与原文档相同吗?
7.实用性
(1)不是指软件本身是否实用,而仅指具体特性是否实用。
(2)在审查产品说明书、准备测试或者实际测试时,想一想看到的特性对软件是否具有实际价值。它们有助于用户执行软件设计的功能吗?如果认为它们没必要,就要研究一下找出它们存在于软件中的原因。
GUI测试用例
窗口
1、窗口是否基于相关的输入和菜单命令适当地打开
2、窗口能否改变大小、移动和滚动
3、窗口中的数据内容能否用鼠标、功能键、方向键和键盘访问
4、当被覆盖并重新调用后,窗口能否正确地显示
5、需要时能否使用所有窗口相关的功能
6、所有窗口相关的功能是否可操作
7、是否有相关的下拉式菜单、工具条、滚动条、对话框、按钮、图标和其他控制可为窗口使用,并适当地显示
8、显示多个窗口时,窗口的名称是否被适当地显示
9、活动窗口是否被适当地加亮
10、如果使用多任务,是否所有的窗口被实时更新
11、多次或不正确按鼠标是否会导致无法预料的副作用
12、窗口的声音和颜色提示与窗口的操作顺序是否符合要求
13、窗口是否正确地被关闭
下拉式菜单和鼠标
1、菜单项是否显示在合适的语境(context)中
2、应用程序的菜单项是否显示系统相关的特性(如时钟显示)
3、下拉式操作是否运行正确
4、菜单、调色板和工具条是否运行正确
5、是否适当地列出了所有的菜单功能和下拉式子功能
6、是否可以通过鼠标访问所有的菜单功能
7、文本字体、大小和格式是否正确
8、是否能够用其他的文本命令激活每个菜单功能
9、菜单功能是否根据当前的窗口操作加亮或变灰
10、菜单功能是否正确执行
11、菜单功能的名字是否具有自解释性、菜单项是否有帮助
12、同等功能的菜单功能与工具条的是否功能一致
13、在整个交互式语境中,是否可以识别鼠标操作
14、如果要求多次点击鼠标,是否能够在语境中正确识别
15、光标、处理指示器和识别指针是否根据操作适当地改变
数据项
1、字母数字数据项是否能够正确回显,并输入到系统中
2、图形模式的数据项(如滚动条)是否正常工作
3、是否能够识别非法数据
4、数据输入消息是否可理解
【源地址】http://www.cnblogs.com/ccvamy/p/4474546.html