目录

1 解释

2 测试水平

3 静态测试与动态测试

4 测试与调试

5 白盒测试与黑盒测试

6 测试优先的编程(TTD)

7 回归测试


1 解释

软件测试是提供有关被测产品或服务质量的信息而进行的一项调查。它是执行程序或应用程序的过程,目的是发现错误(错误或其他缺陷),并验证软件产品是否适合使用。测试的目标与其他开发活动的目标背道而驰。目标是找出错误。

2 测试水平

Unit testing 单元测试:它指的是验证特定代码的一部分功能的测试,通常在功能级别。

Integration testing 集成测试:由多个程序员或编程团队创建的两个或多个类、包、组件、子系统的组合执行。

System testing 系统测试:对一个完全集成的系统进行测试,以验证该系统是否满足其要求。

3 静态测试与动态测试

静态测试是在没有实际执行程序的情况下执行的。静态测试通常是隐式的,例如校对,即编程工具检查源代码结构、编译器检查语法和数据流等。评审、代码走查或检查称为静态测试。

动态测试描述了对代码的动态行为的测试,它实际上是用一组给定的测试案例来执行编程的代码。动态测试可以在程序100%完成之前开始,测试代码特定部分的正确性,并且它适用于测试离散的功能或模块。这方面的典型技术是使用存根/驱动器或从调试器环境中执行。

4 测试与调试

测试:发现是否存在错误。

调试:识别错误根源,消除错误。

5 白盒测试与黑盒测试

白盒测试是通过观察程序的内部结构 或程序的工作原理,通过查看 源代码来测试。黑盒测试把软件当作一个 "黑盒",在不了解内部实现的情况下检查功能,不看源代码。

6 测试优先的编程(TTD)

在写代码之前先写测试。不要把测试留到最后,那样只会使调试时间更长、更痛苦,因为错误可能在你的代码中的任何地方。先写测试是了解规约的一个好方法,写测试用例就是理解、修正、完善你的spec设计的过程。

TDD是一个重复较短开发周期的开发过程:需求变成非常具体的测试案例,然后改进软件以通过新的测试。

7 回归测试

在每次修改后运行所有的测试被称为回归测试。软件工程师从痛苦的经验中知道,对一个大型或复杂程序的任何改变都是危险的。无论你是修复另一个错误,增加一个新的功能,还是优化代码以使其更快,一个自动化的测试套件可以保留正确行为的底线--即使只有几个测试--也能拯救你。在你改变代码时经常运行测试,可以防止你的程序退化--即在你修复新的错误或增加新的功能时引入其他错误。

软件测试testing相关推荐

  1. 推荐几本有关软件测试的书籍

    转载:http://hi.baidu.com/jxehsdqdmbbeiuq/item/457a871bdeff7eec9813d63f 推荐几本有关软件测试的书籍 <软件测试>      ...

  2. 现代软件工程讲义 1 软件工程概论

    现代软件工程讲义 1 软件工程概论 几乎所有程序员都知道 "数据结构+算法 = 程序 " 这句名言.但是在实际的学习和工作中,也有不少人产生了疑问. 例如: 1.       我写 ...

  3. Something about Software Engineering

    文章目录 软件工程 定义 Definition 软件危机 Software Crisis 软件生命周期 软件工程知识体系 SWEBoK(Software Engineering Body of Kno ...

  4. 软件开发过程中一共有几个阶段,每个阶段作用

    第一阶段:需求分析 Requirements Capture 软件需求分析就是回答做什么的问题.它是一个对用户的需求进行去粗取精.去伪存真.正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规 ...

  5. 计算机软件与应用ppt,【第01讲Rup与敏捷_计算机软件及应用_IT计算机_专业-精品课件PPT材料】...

    第01讲Rup与敏捷_计算机软件及应用_IT计算机_专业资料-精品课件(PPT) <第01讲Rup与敏捷_计算机软件及应用_IT计算机_专业资料-精品课件(PPT).ppt>由会员分享,可 ...

  6. 探索式软件测试—Exploratory Software Testing

    最近找到去年上半年看过一本关于测试方面书籍的总结笔记,一直放在我的个人U盘里,当时是用Xmind记录的,现在重新整理下分享给大家了! James A.Whittaker [美] 詹姆斯·惠特克(软件测 ...

  7. 【CS】软件测试概念Software Testing

    1.定义 软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程.行业标准IEEE/ANSI提出的软件工程术语中给软件测试下的定义是: ...

  8. 手机软件测试英语,手机软件测试,mobile phone software testing,音标,读音,翻译,英文例句,英语词典...

    补充资料:软件测试 软件测试 software testing 配置项测试和系统测试. 加强测试管理对于保证测试可靠性十分重要,应按系统化的流程做好4步工作:①制定测试计划,确定总方针.资源及进度:② ...

  9. 软件测试自学英语计划,软件测试计划,software testing plan,音标,读音,翻译,英文例句,英语词典...

    补充资料:软件测试 软件测试 software testing 配置项测试和系统测试. 加强测试管理对于保证测试可靠性十分重要,应按系统化的流程做好4步工作:①制定测试计划,确定总方针.资源及进度:② ...

最新文章

  1. php:Mcrypt响应慢的原因解决备注
  2. 1038. Recover the Smallest Number (30)
  3. 基于PHPUnit编写第一个测试用例
  4. maven 排除某个类_java-如何从Maven依赖项中排除某些程序包(在JAR中)?
  5. 计算机开机出现ROM,电脑无法开机提示exiting pxe rom的解决办法
  6. VIM之taglist
  7. revit二次开发概念_Revit二次开发那些事儿
  8. 35岁程序员人群被公司优化,你觉得合理吗?
  9. 获取贵州茅台2010年1月1号至今的股票交易数据,计算该股票历史数据的5日均线和30日均线
  10. 小程序引用公共js,不看可惜了!!
  11. Django+redis+celery实现异步任务
  12. 计算机创新杯说课大赛课件,信息化教学设计方案创新杯说课大赛国赛说课课件.doc...
  13. 为什么程序员和产品经理水火不容? | 每日趣闻
  14. jQuery炫酷3d背景视觉差特效
  15. QTextEdit和QTextDocument(ZZ)
  16. SkipList ----- 跳表
  17. CSS3综合练习,导航菜单的制作
  18. oracle sde权限,SDE工作机制
  19. 星际争霸2 人族两船兵笔记
  20. 矩阵论(六):矩阵的条件数

热门文章

  1. (0101)iOS开发之iPad模拟器如何实现分屏模式调试
  2. Go 笔记之为什么要学 Go
  3. 【归档】证明V的两个子空间的并是V的子空间当且仅当其中一个子空间包含另一个子空间
  4. 数据分析思维 -- 第二步:开启分析思路
  5. 安卓上微信闪退的一种解决方法
  6. Proxmox VE 7.2 网卡直通
  7. 图像处理 去模糊 去马赛克 软件
  8. 妖哲的日常3 QA前线——讨伐!全自动页游
  9. 能源互联网和电力大数据下的厮杀
  10. python字符串函数用法大全