软件测试术语解析

一.从测试设计的方法来看,我们知道有两类方法:
Black box (黑箱)
White box (白箱)
 
 
二.功能测试
   在下表所列的测试中,测试的范围有小到大,测试者也由内到外, 从程序开发人员(单元测试)到 测试人员,到一般用户(Alpha/Beta 测试)。
 
测试名称
   
测试内容
Unit Test
   
单元测试 – 在最低的功能/参数上验证程序的正确性
Functional Test
   
功能测试 – 验证模块的功能
Integration Test
   
集成测试 – 验证几个互相有依赖关系的模块的功能
Scenario Test
   
场景测试 – 验证几个模块是否能够完成一个用户场景
System Test
   
系统测试 – 对于整个系统功能的测试
Alpha/Beta Test
   
外部软件测试人员(Alpha/Beta 测试员)在实际用户环境中对软件进行全面的测试。
 
 
 
三.非功能测试

测试名称
   
测试内容
Stress/load test
   
测试软件在负载情况下能否正常工作
Performance test
   
测试软件的效能
Accessibility test
   
测试软件辅助功能测试 – 测试软件是否向残疾用户提供足够的辅助功能
Localization/Globalization Test
   
本地化/全球化测试
Compatibility Test
   
兼容性测试
Configuration Test
   
配置测试 – 测试软件在各种配置下能否正常工作
Usability Test
   
可用性测试 – 测试软件是否好用
Security Test
   
软件安全性测试

 

四.Ad hoc Test, Exploratory Test “探索式”的测试

   “ad hoc”测试的测试流程是不可重复的,因为它的测试都是“特定”测试,没法重复。由于这一原因,“ad hoc”测试不能自动化,就这一点而言,还达不到CMM的第二级 – 可重复级。

 

五.Regression Test回归测试

    Regress的英语定义是:return to a worse or less developed state.  是倒退,退化,退步的意思。

    在软件工程中,如果一个模块或功能以前是正常工作的,但是在一个新的构建中出了问题,那这个模块就出现了一个“退步”- regression, 从正常工作的稳定状态退化到不正常工作的不稳定状态。
  
    在一个模块的功能逐步完成的同时,和此功能有关的测试用例也同样在完善中。一旦有关的测试用例通过,我们就得到此模块的功能基准(baseline).
 
    在某某版本,某某模块的某某测试用例是通过的!
 
    如果测试人员发现了在新的构建版本某个测试用例失败了,这就是一个“倒退”,在新版本上运行所有已通过的测试用例以验证没有“退化”情况发生,这个过程就是一个“regression test”.  如果这样的“倒退”是由于模块的功能发生了正常变化(由于设计变更的原因),那么测试用例的基准就要修改,以和新的功能保持一致。
 
    针对一个bug fixed,我们也要作Regression Test,
    a)     验证新的代码的确把缺陷改正了,
    b)    同时要验证新的代码没有把模块的现有功能破坏,没有regression。
 
    所以我不也知道“回归测试”是如何的“回归”,我们可以理解为“回归到以前不正常的状态”。
 
    回归测试最好要自动化,因为对于每一个构建都要运行所有回归测试,以保证尽早发现问题。
 
    就是“退化测试吗”?

 

六.Scenario/integration/System Test  场景/集成/系统测试

    在软件开发的一定阶段,我们要对一个软件进行全面和系统的测试,以保证软件的各个模块都能共同工作,在各方面都能满足用户的要求。

 

七.Performance Test 效能测试
    用户使用软件,不光是希望软件能够提供一定的服务,而且还要求服务的质量要达到一定的水平,软件的效能, 是这些“非功能需求”,或者说“服务质量需求”的一部分。
 
 
八.Stress Test压力测试
 
   压力测试严格地说不属于效能测试。压力测试要验证的问题是:
   软件在超过设计负载的情况在仍能够返回正常结果,而没有产生严重的副作用或崩溃。
 
 
九.Alpha Test, Beta Test
 
    在开发软件的过程中,开发团队希望让用户直接接触到最新版本的软件,以便从用户那里收集反馈,这时开发团队会在开发过程中让特定的用户(alpha/beta用户)使用正处于开发过程中的版本,用户会用特定的反馈渠道(email, BBS)与开发者讨论使用中发现的问题。

 » 相关连接:
压力测试和性能测试的区别 测试设计中需要考虑的22种测试类型 谈项目管理和软件测试过程 软件测试:单元测试浅析
开源软件测试模型精析
 » 本栏目最新帖:
 » 精华帖:

Powered by PHPWind v6.0 Code © 2003-08