更高级别的测试

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

功能测试,作者从三个方面来概述:

⊙定义上:是一个试图发现程序与其外部规格说明之间存在不一致的过程。
⊙方法上:通常是一项黑盒测试,即:要依赖早期的单元测试的过程来实现理想的白盒逻辑覆盖准则。
⊙过程上:需要对规格说明进行分析以获取测试用例集

系统测试、系统测试的执行

 作者从两个方面来概述一下系统测试,至于细节就不再详细叙述了。

⊙对错误理解方面而言,主要是容易跟功能测试混淆。(应重点注意那些在设计外部规格说明的过程中所犯的转换错误。)
⊙对困难性而言,是由于要将程序与其目标进行比较,是系统测试的核心目的,可是没有说明使用什么样的测试用例设计方法。因此,系统测试采取一种不同的测试用例设计法,共计15种的系统测试策略。(具体每个测试策略所采用的步骤就不再叙述了。)它们分别是:能力测试、容量测试、强度测试、易用性测试、安全性测试、性能测试、存储测试、配置测试、兼容性/配置/转换测试、安装测试、可靠性测试、可恢复性测试、适用性测试、文档测试、过程测试。

系统测试的执行,所涉及的关键是:规定了不能进行系统测试的人员及机构:一是程序员;一是负责该程序开发的机构。原因如下:

⊙执行系统测试的人思考问题的方式必须与最终用户相同;
⊙系统测试是一项“随心所欲,百无禁忌”的活动,而软件开发机构会受到心理束缚,有悖于此项活动。大多数的开发机构最为关心的是让系统测试进行得尽可能顺利并按时完成,而不会尽力证明程序不能满足其目标。系统测试至少应由很少受开发机构左右的独立人群来执行。也许最经济的执行系统测试的方法,是将测试分包给一个独立的公司来完成

《the art of software testing》第六章的更多相关文章

  1. 《the art of software testing》 (1-2)章

    软件测试的心理学,重点是要认清: 测试时为发现错误而执行程序的过程 成功的测试:如果在测试某段程序时发现了错误,而且这些错误是可以修复的,就将这次合理设计并得到有效执行的测试称作是"成功的& ...

  2. 《The art of software testing》的一个例子

    这几天一直在看一本书,<The art of software testing>,里面有一个例子挺有感触地,写出来和大家分享一下: [问题] 从输入对话框中读取三个整数值,这三个整数值代表 ...

  3. 《the art of software testing》第四章 测试用例的设计

    白盒测试 逻辑覆盖测试: 逻辑覆盖是以程序内部的逻辑结构为基础的设计测试用例的技术.它属白盒测试.白盒测试的测试方法有代码检查法.静态结构分析法.静态质量度量法.逻辑覆盖法.基本路径测试法.域测试.符 ...

  4. 《the art of software testing》 第三章 人工测试

    在深入研究较为传统的计算机测试技术之前,要先进行"人工测试". 代码检查与走查是两种主要的人工测试方法. 代码检查与走查是对过去桌面检查过程(在提交测试前由程序员阅读自己程序的过程 ...

  5. 《the art of software testing》第五章

    构建大型程序测试的第一个步骤:模块测试 测试用例的设计 在为模块测试设计测试用例时,需要两种信息:模块的规格说明和模块源代码: 模块测试总体上面向白盒测试: 模块测试的测试用例设计过程:使用一种或多种 ...

  6. 软件测试software testing summarize

    软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性.完整性.安全性和质量的过程.软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对 ...

  7. JavaScript高级程序设计:第六章

    第六章 面向对象的程序设计 一.理解对象 1.属性类型: ECMAScript中有两种属性:数据属性和访问器属性. (1)数据属性: 数据属性包含一个数据值的位置.在这个位置可以读取和写入值.数据属性 ...

  8. 第六章、Linux 的文件权限与目录配置

    第六章.Linux 的文件权限与目录配置 1. 使用者与群组 2. Linux文件权限概念 2.1 Linux文件属性 2.2 如何改变文件属性与权限: chgrp, chown, chmod 2.3 ...

  9. 第六章:Reminders实验:第二部分[Learn Android Studio 汉化教程]

    Learn Android Studio 汉化教程 Reminders Lab: Part 2 This chapter covers capturing user input through the ...

随机推荐

  1. EMMC架构

    现在EMMC盛行,分析总结还是很有必要的.以下以全志a64为实例切入主题. 这里a64有三个sdc0~2,硬件上sdc2是连接EMMC,这里只分析sdc2的代码. 初始化的代码在linux-3.10/ ...

  2. 平均分割list

    private static List<List<Integer>> splitList(List<Integer> lists,int limit){ int s ...

  3. Android开发SQLite数据库的创建

    package com.example.db; import android.content.Context; import android.database.sqlite.SQLiteDatabas ...

  4. 【Python学习笔记】在OSX下搭建opencv+python环境

    https://jjyap.wordpress.com/2014/05/24/installing-opencv-2-4-9-on-mac-osx-with-python-support/ 参照以上b ...

  5. sql for 存储过程格式

    sql DELIMITER && CREATE PROCEDURE test2() BEGIN DECLARE i INT; ; DO ')); ; END WHILE; END; & ...

  6. 多线程使用信号量sem_init,sem_wait,sem_post

    信号量的主要函数有: int sem_init(sem_t *sem,int pshared,unsigned int value); int sem_wait(sem_t *sem); int se ...

  7. Perl参考函数/教程

    这是标准的Perl解释器所支持的所有重要函数/功能的列表.在一个函数中找到它的详细信息. 功能丰富的 Perl:轻松调试 Perl Perl脚本的调试方法 perl 入门教程 abs - 绝对值函数 ...

  8. Linux操作系统下的多线程编程详细解析----条件变量

    条件变量通过允许线程阻塞和等待另一个线程发送信号的方法,弥补了互斥锁(Mutex)的不足. 1.初始化条件变量pthread_cond_init #include <pthread.h> ...

  9. 分析java类的静态成员变量初始化先于非静态成员变量

    依上图中当class字节码文件被jvm虚拟机加载到内存中依次经过 连接 验证:对字节码进行验证 准备:给静态变量分配内存并赋予变量类型各自的默认值(注:基本类型为0或false,对象为null,sta ...

  10. 免费SSL证书 - Let's Encrypt申请(WINDOWS + IIS版)

    Let’s Encrypt 项目是由互联网安全研究小组ISRG,Internet Security Research Group主导并开发的一个新型数字证书认证机构CA,Certificate Aut ...