关于测试的心得笔记 1、软件测试 测试
静态测试、动态测试:静态:review,walkthrough,inspections 测试:发现是否存在错误,调试:消除错误 白盒测试:对程序内部代码结构测试 黑盒测试:对程序外部表现出来的行为测试。 2、测试用例 测试用例=输入+执行条件+期望结果 3、测试优先的编程 先写spec、再写测试用例、再写代码、再写测试用例直至通过 TDD:测试驱动开发 (TDD) 是一个开发过程,它依赖于非常短的开发周期的重复:将需求转化为非常具体的测试用例,然后改进软件以通过新的测试。 4、单元测试 针对软件的最小单元进行测试 5、Junit 测试可以访问具有默认(包)可见性的成员 6、黑盒测试 用于检查代码功能,不关心内部细节 检查程序是否符合规约,用尽可能少的测试用例,尽快运行,并尽可能大的发 现程序的错误 6.1、等价类划分 针对每个输入数据需要满足的约束条件,划分等价类(每个等价类中选一个代表作为用例,降低测试用例的数量) 限定数值范围(里外)、指明特定值(一个多个)、确定一组值(若干一个),YN
大量的错误发生在输入域的“边界”而非中央, 在等价类划分时,将边界作为等价类之一加入考虑. 笛卡尔积全覆盖:测试完备,但是测试用例多,测试代价高;覆盖每个取值最少1次即可:测试用例少,代价低,但测试覆盖未必高。
8、代码覆盖度 代码覆盖度越低,测试越不充分 但要做到很高的代码覆盖度,需要更多的测试用例,测试代价高 函数覆盖、语句覆盖、分支覆盖、条件覆盖、路径覆盖 效果:路径>分支>语句 难度:路径>分支>语句
|