谈谈今天测试的感受(happying!)

上一篇 / 下一篇  2010-02-02 14:11:33 / 个人分类:工作三二事

2010.1.29
这周已经是第二次继续再测试这个系统了,继上周报告的一些问题后,潜在的问题还在继续发现中,只是测试过程中,觉得有好多东西需要记录下来,以前在看书的时候,觉得什么黑盒测试法,白盒测试法,黑盒里面的等价类划分法,边界值分析法,等等,说起来一套一套的,头头是道,但在实际应用中,脑袋就短路了,觉得自己就像只无头苍蝇一样,到处乱撞,撞到哪里是哪里,发现一个是一个,没什么规律可寻了,虽然知道自己现在没什么经验,但什么事都得有一个好的开始呀,所以今天就把自己乱七八糟,测试一通的东西随笔记录下吧!为后面提供点教训!这里面关于控件的测试部分,有很多都是以前在无忧网上看到前辈们总结出来的规律,自己在测试的过程中,觉得很受用,而且结合自己现在测试的这个系统,把一些漏掉的,还有自己新想起来的就加在上面了,大概归纳了一下,以防后面再次用到吧!

界面方面:

大体上:
1. 控件的摆放位置,布局是否合适;
2. 窗口上显示的文本是否正确;
3. 移动窗体,快速或慢速移动窗体,背景及窗体本身刷新必须正确;
4. 缩放窗体,通过鼠标改变窗体大小时,观察窗体上的控件有没有随着窗体的大小改变,并观察窗体上的控件有没有闪烁;
5. 修改在不同的分辨率下,观察窗体显示是否正常;
6. 安装界面应有公司介绍或产品介绍,有公司的图标(常识);
7. 主界面及大多数界面最好有公司图标(常识);
8. 选择"帮助"->"关于"命令,看见相关版权和产品信息(常识);

众多控件,每类控件都有自己的特性:

密码输入框:
1. 进行字母大小写测试,看密码是否区分大小写(本系统密码是区分大小写的);

上下(up-down)控件文本框:
1. 直接输入数字或用上下箭头控制(这是最基本的功能);
中奖了:
目前我测的这个控件表示的是时间比如03:02,这时候验证下输入功能,已知小时范围在0到23,分钟范围在0到59.
小时位:当前选中1,输入2,结果就成12了,期望的应该是2;当前选中2,输入3,结果就成23了,期望的是3;
分钟位:当前选中2,输入3,结果就成23了,期望的是3;当前选中3,输入2,结果就成32了,期望的是2;当前选中5,输入4,结果就成54了,期望的是4;
总之,总结到一点就是,当选中的是一位数字时,用户再次输入0到9之间的数字时,只要两位数字的组合在我们要求的范围之内,它就会组合在一起,而不会用后面的输入代替前面选中的数字,但实际上,我们要求的是代替,本系统中就存在这个问题,一不小心就发现了,嘿嘿,细心再细心。
2. 利用上下箭头控制数字的自动循环,比如我们要求的范围是0到9,当最大数字为9时,单击向上箭头,数字自动为0;当最小数字为0时,单击向下箭头,数字自动为9;
中奖了:
这里有个特例,也是今天发现的新问题,以前还真没注意到,就是如果这个控件的内容不光是一项简单的数字,而是代表时间的话,比如23:57,时的范围是0到23,分钟的范围是0到59,其实就是一个表,那有一个问题就应该考虑到,就是当分钟位过了59满了60的话,这时候时位就应该自动进一位啊!但实际上本程序没有自动进1,这应该算有问题的吧。嘿嘿,要不是一项项去分析的这么细的话,这个问题就不可能发现!
同样的道理,箭头向下时,从0到59,小时位不会自动减1.
3. 输入一个超越边界值的数字;
4. 输入字符(包含字母,非法字符等,目前这个系统是输不进去的);
5. 输入空格(本系统空格是输不进去的,而且不支持删除键);

组合列表框(貌似就是combo box吧):
1. 检查条目内容是否显示正确,其具体内容要根据需求说明来确定,包括显示的一些错别字啊,拼错的单词呀,有些内容是不是显示的完全;
2. 逐一去执行列表框中每个条目的功能,一个条目接着一个条目去执行,这在以前,我根本就没有这么跑过,就随便选择一个,跑完了就完了,但这就很有可能把有些潜在的问题给错过了,没准刚好系统中对应其中的某一个条目的功能就失效了。但不挨着跑AP的话,哪会知道有这个问题呢?今天又上了一课。耐心再耐心。
3. 检查能否向组合列表框中输入数据,假定能输入的话,比如输入一个数据库中并不存在的条目(假定列表里面显示的条目都是从数据库中读取),这个时候执行下程序,看是什么效果,我在测本系统时,系统异常退出了,并且有异常消息弹出。或者输入一系列的非法字符,比如@#¥%等,看下什么效果,提示的异常信息跟前面的一样不,这些都需要一个个去验证。

单选按钮:
1. 一组单选按钮不能同时选中,每次只能选中一个;
2. 逐一执行每个单选按钮的功能,分别选择了“男”、“女”后,保存到数据库中的顺序应该也是这样,这必须到数据库中去查看才知道;
3. 在初始状态时必须有一个被默认选中,不能同时为空;

列表框:
1. 列表框里的内容显示要正确;
2. 内容较多时要使用滚动条;
3. 列表框允许多选时,分别检查shift选中条目,按ctrl选中条目和直接用鼠标选中多项条目的情况;

滚动条:
1. 滚动条的长度根据显示信息的长度或宽度及时变换,这样有利于用户了解显示信息的位置和百分比(比如,word中浏览100页文档,浏览到50页时,滚动条位置应处于中间);
2. 随意拖动滚动条,检查屏幕刷新情况,并查看是否有乱码(这点很细致,帮我发现了一个问题);
3. 单击滚动条;
4. 用滚轮控制滚动条;
5. 滚动条的上下按钮;

复选框:
1. 多个复选框可以被同时选中,要特别注意那种有根节点,有子节点的复选框;
2. 多个复选框可以被部分选中;
3. 多个复选框可以都不被选中;
4. 逐一执行每个复选框的功能;

文本框:
1. 输入正常的字母或数字;
2. 输入已存在的文件的名称(这也是在考察重命名的问题);
3. 输入超长字符,例如在“名称”框中输入超过允许边界个数的字符,假设最多255个字符,尝试输入256个字符,检查程序能否正确处理,所输入的内容是否正常显示(数据将会使缓冲区溢出);
4. 输入默认值,空白,空格;
5. 输入特殊字符集,NUL及\n等;
6. 输入非法字符(@#$%^&等);
5. 若只允许输入字母,尝试输入数字;反之,尝试输入字母;
6. 利用复制,粘贴等操作强制输入程序不允许的输入数据;
7. 输入不符合格式的数据,检查程序是否正常校验,比如,程序要求输入年月日格式为yy/mm/dd,实际输入yyyy/mm/dd,程序应该给出错误提示;

命令按钮
1. 点击按钮正确响应操作,比如,单击确定,正确执行操作;单击取消,退出窗口;
2. 对非法的输入或操作给出足够的提示说明,比如,输入月工作天数为32时,单击”确定“后,系统应提示:天数不能大于31;
3. 对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会,比如碰到删除操作时;

菜单:
1. 选择菜单是否可以正常工作,并与实际执行内容一致;
2. 是否有错别字;
3. 快捷键是否重复;
4. 热键是否重复;
5. 快捷键与热键操作是否有效;
6. 是否存在中英文混合;
7. 菜单要与语境相关,比如,不同权限的用户登陆一个应用程序,不同级别的用户可以看到不同级别的菜单,并使用不同级别的功能(这就应用在了本系统中);
8. 鼠标右键快捷菜单;
9. 把系统最小化后,在任务栏上单击鼠标右键,对应右键菜单的快捷键选项,看其功能是否正常;

各种控件在窗体中混合使用时:
1. 控件间的相互作用;
2. tab键的顺序,一般是从上到下,从左到右;
3. 热键的使用,逐一测试;
4. enter键和esc键的使用;
在测试中,应遵循由简入繁的原则,先进行单个控件功能的测试,确保实现无误后,再进行多个控件的的功能组合的测试。


功能方面:

1. 重命名问题(这个占的比例有点高哈);

数据库方面:
未知待续!

今天很开心,很有成就感,不光是发现了前几天没有发现的问题,更重要的是领略到了一种思维,以前站在全局的角度去看问题时,觉得很茫然,因为考虑到的点很多,但却不知道从何下手,今天当把这块肉给一块一块切开看时,才发现其实问题很简单,很多恰恰就暴漏在我们不太重视的细节上,如果不把它分成很细小的部分去对待时,根本就发现不了它的病症所在,而且也学习到了很多东西,以后发现同类问题时,就知道该干什么了,从何下手了,看来工作方法真的很重要呀!高兴,我要保持这种状态! O(∩_∩)O哈!


TAG:

candy2009的个人空间 引用 删除 candy2009   /   2011-02-17 16:53:54
呵呵,是的,想向你请教下,怎么个生成公共测试用例法呢?谢谢!
文青山 引用 删除 wolaizhinidexin   /   2010-02-02 18:58:37
可以生成公共测试用例.一看就知道,你们没这个东西
 

评分:0

我来说两句

日历

« 2024-05-04  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 6163
  • 日志数: 12
  • 建立时间: 2010-01-21
  • 更新时间: 2011-02-17

RSS订阅

Open Toolbar