燕子's profile当人微笑PhotosBlogLists Tools Help

燕子

Windows Media Player

当人微笑

April 14

Unit Test(一)

不记得自己大学四年是怎么混过来的,在公司待了3年,我却是从上周二下午才开始写代码,而且是最简单的Unit Test。貌似我曾经下定决心N次要好好的写代码,但是却是在今年2月中的N+1次下决心后才开始认认真真学习了。记得child临走时给我说“你就是太懒,依赖心太重,如果你出生在一个谁都不能靠的家庭,也许今天不会是这样。”后来,她给我谈过两次叫我不要再靠家里了,自己做出点成绩让别人看看,我才真正从心底决定我一定要学好C#。转眼快两个月了,我也开始写代码了,一开始写的是单表,感觉还蛮简单的,写得也很顺手,心里边不免有一丝得意,觉得自己的基础应该差不多了,心里甚至盘算着回家搞个复杂的程序玩玩。今天开始写复合表,我才发现自己基础还不够牢靠,连续犯了3次常识性错误,这些都是前边没有遇见,并且以后会经常碰到的。我记得自己是从早上9点半开始写HostDAOTest的,中途请教了我哥4次,除了第一次是我们讨论怎么初始化以外,后边3次都是因为我自己基础不扎实,犯的低级错误,现在想起来觉得很脸红,我晚上还教弟弟写程序,自己都这样,怎么能当好老师呢,所以从今天晚上起,我要继续学习,多多练习,我相信再过两个月,我一定能有更大的进步的!
August 10

测试学习笔记(五)

最近忙着测试新版本,一直没有更新我的博客,今天开始又继续 。

错误处理产生的错误:未预料到错误发生的可能性并防止其发生,没有注意错误状态,以及较严重的:程序可能与错误数据一起工作并最终产生错误结果的情况。

·         错误预防:

1)       不充分的初始状态验证

2)       不充分的用户输入检查

3)       对受损数据不能充分预防

4)       不充分的参数传递测试

5)       针对操作系统的预防不充分

6)       不适当的版本控制

7)       针对恶意使用的不充分预防

·         错误检测

1)       忽视溢出

2)       忽视不可能的值

3)       忽视看上去不真实的值

4)       忽视错误标志

5)       忽视硬件缺陷或错误情况

6)       数据比较

·         错误恢复

1)       自动错误更正

2)       未能报告一个错误

3)       未能设置一个错误标志

4)       中止错误

5)       从硬件问题中恢复

6)       不能从遗失磁盘中退出

·         边界相关的错误

1)       边界情况的处理不当

2)       错误边界

3)       边界外情况的错误处理

·         不同边界错误的考虑方式:上溢出或下溢出

1)       数值边界

2)       与一个边界相等

3)       多种多样的边界

4)       空间中的边界

5)       时间的边界

6)       硬件相关边界

·         计算错误

1)       很差的逻辑

2)       很差的算法

3) 不精确的计算

July 18

测试学习笔记(四)

程序僵化:给用户适当的自由

·         用户可调整:

1)     可以关闭噪音

2)     可以关闭大小写区分

3)     适合通用硬件接口

4)     支持改变设备初始化状态

5)     不能改变滚动速度

6)     改变定制命令的保存

·         控制方式

1)       对新手和老手都友好

2)       必需信息过剩

3)       步骤重复

4)       限制过多

性能:

·         程序速度

·         用户吞吐量

·         感觉到的性能:

1)       应给出某个输入时间会很长的警告

2)       不要有太多提问和询问

3)       尽量使用简单命令和提示

输出:

·         不能输出某类数据

·         不能重定向输出

·         必须输出的很少或很多

·         不能控制输出布局   ·       荒谬的精度输出级别

July 13

测试学习笔记(三)

命令结构和录入:

·         测试实践要标注出所有发现的不一致性,无论多么微不足道都要如此

·         优化界面设计:

1)       缩写要一致

2)       终止规则要一致

3)       同一命令的不同形式表现取名应当要一致

4)       要保持命令在同一子菜单中的位置,而不是让它东搬西迁在其他的子菜单中停留

5)       功能键的意义在程序中应始终保持一致

6)       错误处理规则要一致

7)       编辑处理规则要一致

8)       数据保存规则要一致

9)       避免曲折路径,通常完成一个操作不得超过三步

10)    命令不能模糊不清带有个人风格

·         菜单:应该尽量简洁

1)       菜单层次不宜过多,嵌套不宜超过三层

2)       到达相同位置的路径不得超过3

3)       相关的命令归属到相同的菜单下

4)       功能键要标准使用,如F1表示帮助,ESC表示退出

5)       可过滤无效键

遗漏命定:

·         状态转换:可以在任何时候退出

·         危机预防:

1)     有备份工具或手段

2)     撤销或删除可用

3)     有是否确定类提示

·         由用户进行的错误处理:不能包含注释,不能显示变量关系

其他:保证隐私和安全、可隐藏菜单支持通配符、名字长度印有限制

July 12

测试学习笔记(二)

帮助文本和错误信息:

  • 帮助文本和错误信息应该尽量措辞简单明了,多用主动语态,尽量少使用技术术
  • 帮助信息不要太冗长了,多使用“下一步”,“步骤一 ……”
  • 不使用不合适的情绪语气及感叹号
  • 错误来源描述应指出是什么情况,而且还要指出为什么有些东西出了错,以及如何处理此类错误的方法
  • 测试出的错误应当可以重现
  • 当资源不足时,测试无法通过,应说明具体原因

显示缺陷:

  • 数据写到了错误的屏幕位置
  • 未能清除部分屏幕
  • 未能突出显示部分屏幕
  • 显示的字符串错误或不完整
  • 显示信息过长或长度不够

界面布局的显示:

  • 从美学角度看界面不对称,行或列排列不整齐
  • 菜单布局错误:选择一个菜单项通常应该独立,通过键入其首字母来选择菜单项,在同一栏下面不要出项重复的字母
  • 对话框布局错误:

1)       对话框应该一致:一致使用大小写,字体和文本对齐规则;<ESC>不应取消某些对话框

2)       对话框中的控件布局应使用必要的间隔把组隔开

3)       选择和录入区域应该垂直和水平排列

4)       计量减少对话框之间的相互依赖性

  • 少用特效,注意颜色的搭配
  • 整体风格一致
  • 可以取消/恢复一些工具或状态栏

 
Photo 1 of 1