等价类划分:把程序的输入域按属性划分为若干个子集,从每个子集中选取少数代表性数据作为测试用例,每一类代表性数据在测试中的作用等价于这一类中的其他值,常见的分类为有效等价类和无效等价类
边界值分析:是对等价类的补充,本身也是等价类,不过要测试的值是属于等价类里面的边界值,取刚好等于、大于、小于边界的参数,来自行业经验,大多数的错误来自于研发在代码中对边界的处理不严谨
举例: 要求用户名长度为6~12的数字与字母组合而成的字符
输入 | 输入域条件 | 分类 | 代表值 |
用户名 | 长度6~12 | 无效 小于6 | ab12 |
无效边界值 5 | abc12 | ||
有效边界值 6 | abc123 | ||
有效 6~12 | abcdefg12 | ||
有效边界值 12 | abcdef123456 | ||
无效边界值 13 | abcdefg123456 | ||
无效 大于12 | abcdefghijklmnopq12 | ||
字母与数字 | 无效 纯字母 | abcdefg | |
无效 纯数字 | 12345678 | ||
有效 字母与数字组合 | abcdefg123 | ||
无效 特殊字符 | abc@!#123 | ||
无效 空格 |
区别:一个确认等价区间,一个确认边界,任何等价区间都有边界值,有边界就有等价区间