第一次写笔记
2010-05-13 19:08
232 查看
等价类划分方法的详细描述:
通常从三个方面考虑程序的输入:正常输入,边界输入,非法输入。
正常输入:例如字符串的Trim函数,功能是将字符串前后的空格去除,那么正常的输入可以有四类:前面有空格;后面有空格;前后均有空格;前后均无空格。
边界输入:上例中空字符串可以看作是边界输入,如果输入是一个指针的话,空指针也算是边界输入。再如一个表示年龄的参数,它的有效范围是0-100,那么边界输入有两个:0和100。
非法输入:非法输入是正常取值范围以外的数据,或使代码不能完成正常功能的输入,如上例中表示年龄的参数,小于0或大于100都是非法输入,再如一个进行文件操作的函数,非法输入可能有:文件不存在;目录不存在;文件正在被其他程序打开;权限错误。
一般情况下,只要考虑:有哪些正常输入?有哪些边界输入?有哪些非法输入?就可以找出大多数等价类,例如,一个函数,功能是把小写金额转换成大写,输入是小写数字,输出是大写金额,那么:
正常输入有:只有整数,只有小数,既有整数又有小数
边界输入有:整数部分很大,0.0,小数位数超过两位
非法输入有:空串,非数字,负数
等价类这个词是从测试的角度来说的,从开发的角度来看,等价类与功能点具有对应关系,例如,字符串的Trim函数,功能点有:
如果只有左边有空格,返回删除左边空格后的结果(等价类:左边有空格);
如果只有右边有空格,返回删除右边空格后的结果(等价类:右边有空格);
如果两边都有空格,返回删除两边空格后的结果(等价类:两边有空格);
如果两边都没有空格,返回原串(等价类:两边无空格);
如果是空串,直接返回(等价类:空串);
如果是空指针,直接返回(等价类:空指针);
……
通常从三个方面考虑程序的输入:正常输入,边界输入,非法输入。
正常输入:例如字符串的Trim函数,功能是将字符串前后的空格去除,那么正常的输入可以有四类:前面有空格;后面有空格;前后均有空格;前后均无空格。
边界输入:上例中空字符串可以看作是边界输入,如果输入是一个指针的话,空指针也算是边界输入。再如一个表示年龄的参数,它的有效范围是0-100,那么边界输入有两个:0和100。
非法输入:非法输入是正常取值范围以外的数据,或使代码不能完成正常功能的输入,如上例中表示年龄的参数,小于0或大于100都是非法输入,再如一个进行文件操作的函数,非法输入可能有:文件不存在;目录不存在;文件正在被其他程序打开;权限错误。
一般情况下,只要考虑:有哪些正常输入?有哪些边界输入?有哪些非法输入?就可以找出大多数等价类,例如,一个函数,功能是把小写金额转换成大写,输入是小写数字,输出是大写金额,那么:
正常输入有:只有整数,只有小数,既有整数又有小数
边界输入有:整数部分很大,0.0,小数位数超过两位
非法输入有:空串,非数字,负数
等价类这个词是从测试的角度来说的,从开发的角度来看,等价类与功能点具有对应关系,例如,字符串的Trim函数,功能点有:
如果只有左边有空格,返回删除左边空格后的结果(等价类:左边有空格);
如果只有右边有空格,返回删除右边空格后的结果(等价类:右边有空格);
如果两边都有空格,返回删除两边空格后的结果(等价类:两边有空格);
如果两边都没有空格,返回原串(等价类:两边无空格);
如果是空串,直接返回(等价类:空串);
如果是空指针,直接返回(等价类:空指针);
……
相关文章推荐
- Bug笔记:Google Map第一次缩放位置偏移
- 2018年第一次笔记 LINUX的shell入门
- 第一次课笔记
- 与小弟子交谈:引申的思考笔记[第一次编辑] 推荐
- C++ Primer 第9章 顺序容器 第一次学习笔记
- 联想k50 t5手机刷机笔记——第一次自己刷机不成功,网上提供的刷机包垃圾系统应用太多,没良心啊
- c++学习笔记(第一次)
- 第一次课转载的笔记
- 第一次发笔记
- 第一次自己的笔记
- Linux学习笔记第四周第一次课(2月26日)
- 第一次两个技术面笔记
- Ant 学习笔记之第一次亲密接触
- 组合数学第一次课笔记
- 第一次写笔记
- 2月第一次笔记
- [RK3288][Android6.0] 调试笔记 --- 系统第一次开机进入Recovery模式原因
- 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
- 第一次笔记-感悟数据结构的本质
- Linux第一次课笔记