黑箱测试方法大对决

2014-07-09   出处: kojenchieh.pixnet.net  作/译者:kojenchieh

软件测试的方法有很多种, 其中黑箱测试方法被使用最多, 主要的原因是容易上手, 进入门坎不高. 所以很多测试人员会使用这种方法. 可是很多人对于何时该使用却不是很清楚, 因此让我们来做个简单的比较吧

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 来补不足的之处.

5. STD (State Transition Testing)
a. 说明: 利用一些涵盖条件(涵盖所有 state, event 或是 transition), 展开 state transition diagram 的 scenario, 让我们可以最小集合, 测试大部份的状况
b. 适用时机
设计时间时用来验证是否所有 event 都考虑周密, 或者要对模块做自动化测试适合使用

6. DTT (Decision Table Testing)
a. 说明: 列出程序所思考的逻辑条件, 排列出所有可能情况, 并且确认其所产生的输出或是对应的系统行为是否正确
b. 适用时机
适合复杂的功能, 或者是比较 high level 的功能
c. 开出来的测试个案对使用者还算有意义, 但是对于开发团队, 可以用来厘清需求的范围和正确性

d. 通常在列逻辑条件时, 可以搭配 ECT 来使用, 让你的条件更加丰富.

 


声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
534° /5344 人阅读/0 条评论 发表评论

登录 后发表评论
最新文章