更高级别的测试

  • 开发过程和测试过程存在一一对应关系

    • 模块测试的目的是发现程序模块与其接口规格说明之间的不一致
    • 功能测试的目的是为了证明程序未能符合其外部规格说明
    • 系统测试的目的是为了证明软件产品与其初始目标不一致

功能测试

  • 黑盒测试
  • 目的:是为了暴露程序的错误以及与规格说明不一致之处,而不是为了证明程序符合其外部规格说明

系统测试

能力测试

  • 判断目标文档提及的每一项能力是否都确实已经实现

容量测试

  • 使程序经受大容量数据的检验。

    • 需要大量资源
    • 机器和工时限制,不能进行过程的容量测试
    • 每个程序应该至少进行几次容量测试

强度测试

  • 使程序承载高负载或强度的检验

    • 高强度:在很短的时间间隔内达到的数据或操作的数量峰值

易用性测试

  • 试图发现人为因素或易用性的问题

安全性测试

  • 设计测试用例来突破程序安全检查的过程

性能测试

  • 特定性能或效率目标,描述为在特定负载和配置环境下程序的响应时间和吞吐量

存储测试

  • 软件偶尔会有存储目标

配置测试

  • 应该使用每一种类型的设备,以最大和最小的配置来测试程序

兼容性/配合/转换测试

  • 当存在新开发的软件替换某些不完善的系统,会涉及到与现有系统的兼容以及从现有系统的转换过程

安装测试

  • 安装测试是系统测试中的一个重要部分

可靠性测试

  • 可靠性目标:正常运行时间,平均故障间隔时间(MTBF)

可恢复性测试

  • 可恢复性目标:平均恢复时间(MTTR)

适用性测试

  • 目标:存储转存程序或诊断程序、调试明显问题的平均时间、维护过程以及内部业务文档的质量

文档测试

  • 根据文档来确定系统测试用例的形式
  • 即一旦涉及完成某个具体的测试情况,应该使用文档来确定系统测试用例的形式

过程测试

  • 必须对所有已规定的人工过程,如系统操作员、数据库管理员或最终用户的操作过程进行测试

系统测试的执行

  • 不能有程序员来进行测试
  • 在所有的测试阶段之中,这是唯一一个明确地不能由负责该程序开发的机构来执行的测试

验收测试

  • 将程序预期最初的需求及最终用户当前的需求进行比较的过程
  • 测试通常是由程序的客户或最终用户来进行

安装测试

  • 在安装软件系统期间会发生很多时间,作为示例的简短列表可以包括:

    • 用户必须选择大量的选项
    • 必须分配并加载文件和库
    • 必须进行有效的硬件配置
    • 软件可能要求网络连通,以便与其他软件连接
  • 软件测试用例需要检查以确认已选的选项集合互不冲突,系统的所有部件全部存在,所有文件已经创建并包含必须内容,硬件配置妥当

测试的计划与控制

测试结束准则

  • 常见准则:

    • 用完安排的测试时间后,测试便结束
    • 当执行完所有测试用例都未发现错误,测试便结束
  • 上述两条准则往往是无效的,以下三类结束准则较为有效


  • 最佳准则可能是上述三类的组合

调试

  • 调试是执行一次成功的测试之后要进行的工作。成功的测试指的是可以证明程序没有实现预期功能。

    • 从执行了一个成功的测试用例,发现了一个问题开始
    • 确定程序中可疑错误的准确性和位置
    • 修改错误

暴力调试法

利用内存信息输出调试

根据一般的“在程序中插入打印语句”建议来调试

使用自动化的调试工具进行调试

特点

  • 忽略思考的过程

归纳法调试

演绎法调试

回溯法调试

测试法调试

调试的原则

定位错误的原则

  • 动脑筋
  • 遇到僵局稍后解决
  • 遇到困境描述给他人
  • 测试工具是第二手段
  • 避免使用试验法

修改错误的技术

  • 存在一个缺陷的地方,可能还存在其他缺陷
  • 应纠正错误本身,而不是其症状
  • 正确纠正错误的可能性并非100%
  • 正确修改错误的可能性随着程序规模的增大而降低
  • 改正错误可能会引入新的错误
  • 修改错误的过程也是临时回到设计阶段的过程
  • 应该修改源代码而不是目标代码

错误分析

  • 错误出现在什么地方?
  • 谁制造了这个错误?
  • 哪些做得不正确?
  • 如何避免该错误的出现?
  • 为什么错误没有早些发现?
  • 该如何更早地发现错误?

极限测试

极限编程基础

  • XP重视采取简单的设计、在开发人员和客户之间建立联系、不断地测试代码库、重构以适应规格说明的变更,以及寻求用户的反馈。XP更倾向于适合中小规模的软件开发,这些软件的规格说明的变更非常频繁,接近实时的沟通也是可能的。

    • 避免了大规模项目的综合征
    • 避免了编写不必要的功能
    • 将精力集中在测试上,测试先行

极限测试:概念

  • 极限测试分为单元测试和验收测试

极限单元测试

  • 是极限测试中才用的主要测试方法
  • 简单规则
    • 所有代码模块在编码开始之前必须设计好单元测试用例
    • 在产品发布之前必须通过单元测试
  • 极限测试中的单元测试与普通单元测试的最大区别
    • 极限测试中的单元测试必须在模块编码之前就完成设计和生成
    • 这样能够迫使我们在代码编写之前, 首先理解规格说明,避免混淆

验收测试

  • 目的是判断应用程序是否满足如功能性和易用性等其他需求。在设计/计划阶段,由开发人员和客户来设计验收测试
  • 验收测试也是回归测试的一种形式

软件测试基础-更高级别的测试、调试、极限测试相关推荐

  1. 在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试

    在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试 原文:在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试 版权声明:本作品采用知识共享署名-非商业性 ...

  2. 性能测试——负载测试、容量测试、极限测试、压力测试

    1.负载测试(Load Test):负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担. 关注点:how much 2.压力测试(Stress Test): 压力测试(又叫强度测试)也 ...

  3. html5测试 iphone6sp,极限测试!iPhone6s Plus表现太夸张!

    原标题:极限测试!iPhone6s Plus表现太夸张! 近期,好奇实验室进行了一次疯狂的跳伞实验,三组人马分别携带华为Mate 8.三星Note 5和苹果iPhone6s Plus从4000米高空跳 ...

  4. 精读-软件测试的艺术之调试,极限测试和因特尔应用系统的测试

    本文是关于精读书籍<软件测试的艺术>的一些学习笔记和分享 本书共有九章包括测试思想(心理,经济),代码检查,测试用例设计,模块测试,更高级别的测试,调试,极限测试和因特尔应用系统的测试. ...

  5. 软件测试的完整案例分析,清华大学出版社-图书详情-《软件测试基础与测试案例分析》...

    随着计算机系统规模和复杂性的急剧增加,计算机软硬件出现故障和系统失效的可能性也在增加.为保证计算机软件的质量,软件测试正日益受到IT业的重视.软件测试一般是指在规定的条件下,对计算机软件进行测试,发现 ...

  6. 《软件测试的艺术》第六章 更高级别的测试

    <软件测试的艺术>第六章 更高级别的测试 6.0 前言 软件开发过程模型 6.1 功能测试 6.2 系统测试 6.2.1 能力测试 6.2.2 容量测试 6.2.3 强度测试 6.2.4 ...

  7. 软件测试基础:自动化测试、安全测试、性能测试

    自动化测试的意义: 缩短软件开发测试周期,可以让产品更快投放市场 测试效率高,充分利用硬件资源 节省人力资源,降低测试成本 增强测试的稳定性和可靠性 提高软件测试的准确度和精确度,增加软件信任度 软件 ...

  8. 想要踏入测试门这些软件测试基础知识必须闹记在心

    目录 一.软件测试概述 二.白盒测试 三.黑盒测试 四.测试用例 五.单元测试 六.功能测试 七.集成测试 八.系统测试 九.验收测试 十.回归测试 十一.配置测试 一.软件测试概述 1.什么是软件 ...

  9. 软件测试基础丨测试工程师之间要善于发现闪光点——测试理念篇

    测试理念有多种,有一些理念,深藏于我的心中, 而这些理念,您或许偶尔想到,却没有说出,或许您感受到了,却因为工作生活的忙碌,没有将其背后的含义想具体, 在此我非常愿意和大家进行分享这些理念. 第一篇: ...

最新文章

  1. 吴裕雄--天生自然 PYTHON3开发学习:输入和输出
  2. ngx_lua 模块
  3. 文献记录(part11)--Biclustering of Expression Data
  4. html表单传值,如何将用户输入的表单值从html传递给javascript?
  5. python线程池超过最大数量_讨论一下Python线程池大小设置?
  6. 2020年百度之星程序设计大赛-初赛一(Drink、GPA、Dec)
  7. 雷石柏云服务器指令,雷石KTV人工智能,让歌唱更自由
  8. SPSS——描述性统计分析——列联表
  9. html 怎么让整体居中,html中表格整体居中 详解html里面如何让表格居中
  10. 蒟蒻的第一篇博客(洛谷P1113)
  11. CTF---Web入门第十六题 天下武功唯快不破
  12. JAVA/JS针对常见的字符数据处理的一个总结(JS截取字符串,判断是否包含某个字符串及它出现的次数;JAVA数据四舍五入,去掉科学计数法,截取特定符号之前或之后的数据)
  13. 图片怎样调整分辨率?如何在线修改分辨率?
  14. [记录][问题]Win32调用C++/WinRT DLL
  15. 图书管理系统课设报告(含用例图、通信图、顺序图、状态图、活动图)
  16. 用Python求矩阵的广义逆
  17. Linux C编程 itoa()函数 atoi()函数
  18. CU VS. 北航未来花园
  19. 大数据早报:搜狐《数字之道》,召唤新势力 十一数据观:钱和人都去哪了?(10.10)
  20. CvMat、Mat、IplImage之间的转换详解及实例

热门文章

  1. 入门kpi的后台工具类
  2. HP DL388 G9升级微码
  3. 计算机专业国外访学进修目的,浙江师范大学关于2012年度专业技术职务评审工作的实施意见...
  4. ES6 Map的创建、遍历、使用及注意
  5. 【学习笔记17】buu [安洵杯 2019]easy_web
  6. jsp教学网站百度文库_精品课程JSP教学网站的评价研究
  7. 多种规格尺寸可定制羧基化聚苯乙烯-二乙烯基苯聚合物微球PS-DVB-COOH
  8. 洛谷p1618 三连击(升级版)(python)
  9. 计算机专业和新能源专业哪个好就业,新能源科学与工程专业就业前景与方向(五篇)...
  10. 餐饮店装修不得不看的流程