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

TesCase-GUI(图形用户界面)测试的更多相关文章

  1. 黑马程序员_<<GUI(图形用户界面)--------1>>

    --------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1.  GUI图形用户界面 1.简述 Gra ...

  2. java第八节 GUI/图形用户界面

    /* *第8讲 GUI/图形用户界面 * AWT的基础知识 * GUI全称是Graphical User Interface,即图形用户界面 * JDK中提供了AWT和Swing两个包,用于GUI程序 ...

  3. GUI(图形用户界面)

    一.GUI(图形用户界面) GUI Graphical User Interface(图形用户接口) 用图形的方式,来显示计算机操作的界面,这样更方便更直观 CLI Command line User ...

  4. python学习笔记(十 一)、GUI图形用户界面

    python图形用户界面就是包含按钮.输入框.选择框等组件的窗口.主要依赖与工具包进行代码编写.python GUI工具包并发互斥的,你可以选择多个工具包进行安装,有极大选择空间.每个工具包都有不同用 ...

  5. GUI 图形用户界面 [学习笔记]

    今晚返璞归真了一把, 系统了解了一下GUI的有关知识: GUI(Graphical User Interface) 图形用户界面 是指采用图形方式显示的计算机操作用户接口.与早期计算机使用的命令行界面 ...

  6. linux系统中firewalld防火墙管理工具firewall-config(GUI图形用户界面)

    firewall-config是firewalld防火墙管理工具的GUI(图形用户界面)版本,几乎可以实现所有以命令行来执行的操作. firewall-config的界面如下图(在终端直接运行fire ...

  7. python之GUI图形用户界面 2014-4-7

    #图形用户界面1.下载和安装wxPython2.创建并显示一个框架import wx #导入wxPythonapp=wx.App()win=wx.Frame(None)win.Show() #调用窗口 ...

  8. Python学习笔记:wxPython(GUI图形用户界面)

    wxPython是一套基于Python的第三方GUI插件,可用Python制作丰富的图形化界面程序. 安装:pip install wxPython 或者 网站下载安装https://pypi.org ...

  9. java GUI(图形用户界面)

    GUI Graphical User Interface(图形用户接口). 用图形的方式,来显示计算机操作的界面,这样更方便更直观. CLI Command line User Interface ( ...

  10. Unity3D GUI图形用户界面系统

    1.skin变量 using UnityEngine; using System.Collections; public class Skin : MonoBehaviour { public GUI ...

随机推荐

  1. MVC4 WebAPI(一)

    http://www.cnblogs.com/wk1234/archive/2012/04/28/2468491.html 不管是因为什么原因,结果是在新出的MVC中,增加了WebAPI,用于提供RE ...

  2. 调用Newtonsoft.Json 报FileNotFoundException 错误

    具体如下: Exception StackTrace at Newtonsoft.Json.Converters.BinaryConverter.CanConvert(Type objectType) ...

  3. CSS设置DIV背景色渐变显示

    本文转载自:http://blog.csdn.net/gingerredjade/article/details/12191741 <style type="text/css" ...

  4. 利用mtd工具实现嵌入式设备在线升级

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   主要思路是:通过web post方式将升级文件交给CGI程序处理,然后通过mtd工具实现设备在线升级. 1.页面部分 & ...

  5. uboot在nandflash和norflash是如何运行的

    转自:http://www.aiuxian.com/article/p-2796357.html 电子产品如果没有了电,就跟废品没什么区别,是电赋予了他们生命,然而程序则是他们的灵魂. 小时候一直很好 ...

  6. js工具类 ----正则

    function(value){  if(value){   var reg=new RegExp("^[a-zA-Z0-9_-]+$");   return reg.test(v ...

  7. 1分钟内检查Linux服务器性能的命令

    1.uptime 在Linux系统中,这些数据表示等待CPU资源的进程和阻塞在不可中断IO进程(进程状态为D)的数量. 2.dmesg|tail 命令会输出系统日志的最后10行,这些日志都可以排查性能 ...

  8. (转)ZooKeeper伪分布式集群安装及使用

    转自:http://blog.fens.me/hadoop-zookeeper-intro/ 前言 ZooKeeper是Hadoop家族的一款高性能的分布式协作的产品.在单机中,系统协作大都是进程级的 ...

  9. eclipse中输入@符号自动提示Annotation

    将Eclipse中Content Assist中的Auto activation for java里.的后面加上@符号即可

  10. Software Engineer

    1, 软件工程师 软件工程师英文是Software Engineer,是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格.软件工程师是从事软件开发相关工作的人员的统称. 它是一个广 ...