1. ECT (Equivalence Class Testing)
a. 说明: 将受测软件的输入数据, 切成好几个分割(partitions), 对于每个分割, 将会有测试个案去涵盖它
b. 适用时机
比较小的功能, 或是单一 API. 或是画面某个 input control
c. partition 的选择, 是决定你测得好不好的重要关键
d. ECT and BVT 这两种方法最多人使用, 可是不见得是最系统化的方法来开个案.
2. BVT (Boundary Values Testing)
a. 说明: 因为大部分的错误都发生在极值, 所以 BVT 的测试是着重于找出代表性的边界值, 来验证系统的正确性
b. 适用时机
比较小的功能, 或是单一 API. 或是画面某个 input control
c. 这个方法最容易开出测试个案, 因为只要知道输入的值域范围, 马上就可以列出测试个案
3. UCT (User Case Testing)
a. 说明: Use cases 是一种从使用者角度, 来描述系统行为的一种方法. 它由一连串由系统执行的行为所组成, 这些行为可能会对用户产生一些价值. 所以 UCT 是测试 use case 中所有 scenario 的组合.
b. 适用时机
使用者在进行验收测试.
c. 开出来的测试个案对使用者最有意义
4. Pairwise Testing (PT)
a. 说明: 当你有很多测试环境的组合, 例如 3 个 browser, 5 个 OS, 4 个数据库, 你将会有很多环境组合要测试. PT 会利用每两两组合的方式, 而不是去测试所有的组合, 来降低索要测试的组合量
b. 适用时机
要降低测试的组合可以使用. 不过建议自己先列出最重要, 或是风险最高的组合. 之后再利用 PT 来补不足的之处.