《软件测试的艺术》学习记录

软件测试的艺术:(测试是发现错误而执行程序的过程)
一.端正自己的态度:测试是为了发现错误而执行程序。而不是证明软件不纯在错误
黑盒测试:(数据驱动测试或输入/输出驱动测试)(不太可能实现,1.经济学2.逻辑上)
穷举输入测试:将可能的输入条件当测试用。
白盒测试:(逻辑驱动测试)(不太可能实现1.逻辑路径太多2.不经济)
穷举路径测试:测试执行程序的所有控制流路径。
测试原则:
1.测试用例中一个必需部分是对预期输出或结果进行定
2程序员应当避免测试自已编写的程序,编写软件的组织不应当测试自己编"的软件
3.应当彻底检查每个测试的执行结果
4.测试用例对程序在上述输入数据下正确结果的精确描述。
5. 测试用例不仅应当根据有效和预期的输入情况,而且也应当根据无效和未预料到的输入情况。
6. 避免测试用例用后即弃。
7. 计划测试工作时不应默许假定不会发现错误
人工测试:(可以精确对错误的定位)
代码检查和走查主要的人工测试方法。(小组头脑风暴—目标:找出错误)

常用错误列表:
1. 数据引用错误:
a.引用变量未赋值或者未初始化。
b.数组的引用是否下标的值都在规定的界限内。
c.数组的引用是否每一个下标都是整数值。
d.对于通过指针或引用变量的引用,当前引用是否分配内存。(防止虚调用)
2.数据声明错误:
a.是否所有的变量都进行了明确的声明。(不声明可能会照成麻烦)
b.若没有声明,默认的属性是否真确。
c.变量在声明语句被初始化,初始化是否真确。
d.每个变量是否都被赋予了正确的长度和数据类型。
e.变量的初始化是否与其存储空间的类型一致?
f.是否纯在相似的名称的变量,这种情况不一定是错误的,但应被视为警告,应为名称在程序中可能发生混淆。
3.运算错误:
a.是否存在不一致的数据类型的变量间的运算。
b.是否有混合模式的运算?(浮点变量与一个整型变量做加法运算—要谨慎使用)
c.是否有相同数据类型,不同字长变量间的运算?
d.赋值语句的目标变量的数据类型是否下雨右边表达式的数据类型或结果?
e.在表达式的运算中是否存在表达式向上或向下溢出的情况。(结果有效,但中间结果对于编程语言的数据类型可能过大或者过小)
f.除法运算中的除数是否可能为0?
g.在特定场合,变量的赋值是否超出了有意义的范围。PROBABILITY(概率赋值)赋值 始终为正且不大于1.0。
h.赋值和操作符的运算的优先顺序是否真确?
i.整数的运算是否有不当的情况。(整形除法 考虑奇数偶数)
4.比较错误:
a.是否有不同数据类型的变量之间的比较运算,列如,将字符串与地址,日期或数字比较。
b.是否有混合模式的比较运算,或不同长度的变量间的比较运算?如果有,应确保程序能理解转换规则。
c.比较运算符是否真确? 至多,至少,大于,不小于,小于和等于的区别。
d.布尔表达式所叙述的类容是否都正确。 与,或,非表达式的用法。
布尔运算符是否是布尔类型的?比较运算符和布尔运算符是否混淆。
比如:2<i<10 错 (2<i)&&(i<10) 对

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值