软件测试技术经典教程笔记

发布 2021-05-13 05:19:28 阅读 1539

第一章基础知识。

1.1、软件。

1)、软件=程序+文档。

2)、分类。

功能:系统+应用。

架构:单机+c/s+b/s

用户:产品+项目。

规模:小型+中型+大型。

1.2、bug

1)、类型一(广义上,软件生命周期,与用户需求不符的问题):

完全没有实现的功能。

基本实现功能,但有功能上或性能上的问题。

实现了用户不需要的功能。

2)、类型二(测试执行阶段的问题)

defect---requirements&design

errordevelopment

bugtesting

failure---post production

1.3、测试。

1)、概念:

测试是为了检验实际的软件是否符合用户需求,所以不能为了发现错误而发现错误。使用人工或自动手段,来运行或测试某个系统的过程。

2)、测试环境:硬件+软件+网络。

要求:真实(项目、产品)+干净+无毒+独立(测试与开发)

1.4、测试用例。

测试用例=输入+输出+测试环境。

便于团队交流,便于重复测试,便于跟踪统计,比纳与用户自测。

开发生命周期。

需求分析 → 概要设计 → 详细设计 → 编码 → 维护。

测试生命周期。

测试计划 → 测试设计 → 测试执行 → 测试评估。

需求分析和测试计划完成后,根据《系统需求规格说明书》和软件原型(demo)写测试用例。

1.5 其他。

1)、测试人员素质要求:细心、耐心、信心、服务意识、团队合作意识、沟通能力。

2)、如何成为优秀的测试工程师:1、不断学习充电 2、阅读原版书籍 3、阅读缺陷管理系统中的缺陷报告 4、阅读高手写的测试用例 5、学习产品相关的业务知识。

1.6 软件测试的基本规则。

1) zero bug 与 good enough

good enough原则:不充分测试是不负责任,过分的测试是一种资源浪费。

参考:*遗留bug不超过10个,严重的不超过5个。

*测试用例执行率为100%,通过率为95%

*单元测试,关键模块语句覆盖率达到100%,分支覆盖率达到85%

2) 不要视图穷举法。

3) 开发人员不能既是运动员又是裁判员。

4) 软件测试要尽早执行。

5) 软件测试应该追溯需求。

6) 缺陷的二八定理。

一般情况下,软件80%的缺陷集中在20%的模块中。

7) 缺陷具有免疫性。

缺陷具有免疫性,需要根据新版本修改维护测试用例,另外,有一个值得注意的经验:没修复3-4个bug,可能会产生一个新bug。

第二章测试分类。

2.1、是否运行程序。

static testing**规范、界面、文档。

dynamic testing---运行程序。

2.2、根据阶段分类。

unit testing(单元测试10%

最小模块,依据源程序和《详细设计》

白盒测试人员||开发人员。

编译**→静态测试→动态测试。

桩模块(stub)、驱动模块(driver)

integration testing(集成测试20%

模块间的接口,依据单元测试的模块和《概要设计》

白盒测试人员||开发人员。

一般单元和集成同步进行。

system testing(系统测试40%

整个系统(功能、性能、软硬件环境),依据《需求规格说明书》

黑盒测试工程师。

acceptance testing(验收测试20%

整个系统(功能、性能、软硬件环境),依据《需求规格说明书》和验收标准。

用户,可配合黑盒测试工程师。

α测试:内侧。

测试:公测。

2.3、是否查看**。

1)、white-box testing---源**的测试。

2)、black-box testing---功能测试、性能测试。

function testing(功能测试)

logic function testing(逻辑功能测试)

ui testing(界面测试):窗口、下拉式菜单和鼠标操作。

usability tseting(易用性测试)

installation testing(安装测试)

compatibility testing(兼容性测试)

其他:恢复测试、裸机测试、确认测试、接口测试、数据库测试、安全测试、配置测试。

performance testing(性能测试)

时间性能:主要指一个事务的具体响应时间(respind time)。

空间性能:主要指软件运行时所消耗的系统资源(cpu、内存、硬盘)。

分类:一般性能测试、稳定性测试、负载测试、压力测试。

a、一般性能测试:让被测系统在正常的软硬件环境下运行,不向其施加任何压力。

b、稳定性测试(也叫reliability testing 可靠性测试):指连续运行被测系统,检查系统运行时的稳定程度。通常用mtbf(mean time between failure)

c、负载测试(load testing):让被测系统在其能忍受的压力极限范围内连续运行,检测系统的稳定性。

d、压力测试(stress testing):持续不断的给被测系统增加压力,知道被测系统压垮为止,用来测试系统能承受最大压力。

2.4、回归测试、冒烟测试、随机测试。

regression testing(回归测试):软件新版本测试时,重新执行上一个版本测试用例。可以在任何阶段进行(单元测试、集成测试、系统测试、验收测试等),既有黑盒测试的回归,也有白盒测试的回归。

smoke testing(冒烟测试):对一个新版本进行系统大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。

random testing(随机测试):指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。

第三章测试技术。

黑盒测试技术。

3.1、等价类技术(equivalence class testing)

等价类:某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。

有效等价类:符合《需求规则说明书》,合理地输入数据集合。

无效等价类:不符合《需求规则说明书》,无意义的输入数据集合。

等价类划分步骤:

1)先考虑输入数据的类型(合法和非法)

2)再考虑数据范围。

3)画出示意图,区分等价类。

4)为每个等价类编号。

5)从等价类中选择测试数据构造用例。

3.2、边界值技术(boundary value testing)

3.3、因果图法(cause-effect graphs)

因果图法步骤。

1)找出所有的输入条件和输出,并编号。

2)分析输入条件之间的关系,是互斥还是可以同时满足。

3)画出输入条件的排列组合情况。

4)编写测试用例。

因果图试用于输入条件过多。

3.4、流程图法(workflow method)

流程图法步骤。

1)详细了解需求。

2)根据需求说明或界面原型,找出业务流程的各个页面及各页面之间的流转关系。

3)画出业务流图。

4)写用例,覆盖所有路径分支。

流程图法是针对整个系统,而非某个页面或模块。

还有其他如:判定表、错误推测、场景法等,例:atm机取钱-场景法(不全)

白盒测试技术。

3.5 白盒测试检查点。

对程序模块的所有独立的执行路径至少测试一次。

对所有的逻辑判定,取’真’与’假’都至少测试一次。

在循环的边界和运行界限内执行循环体。

测试内部数据结构的有效性等。

步骤:1)根据分析画出流程图。

2)计算圈复杂度 = 判定节点数 + 1

3)写出独立路径。

4)根据独立路径设计测试用例。

第四章缺陷管理。

4.1、bug的分类。

1)严重程度(severity):系统崩溃、严重、一般、次要、建议。

2)优先级(priority):高(high)、中(middle)、低(low)

严重程度高,优先级不一定高,严重程度低,优先级不一定低。

3)按测试种类:逻辑功能类(fcuntion)、性能类(performance)、界面类(ui)、易用性类(usability)、兼容性类(compatibility)

4)按功能模块。

5)按生命周期:新建(new)、确认(confirmed)、解决(fixed)、关闭(closed)、重新打开(reopen)

4.2 缺陷报告。

注意点:1)确保重现bug

2)用最少且必要步骤描述bug

3)简洁、准确、完整。

4)一个bug一个报告。

4.3 缺陷管理工具。

trackrecord、clearquest、bugzilla(免费)、mantis(免费)、jira(免费)

bugzilla:terry weissman研制,perl编写,后台数据库是mysql,最初是用来在netscape内部跟踪bug的,可以在多种平台运行。

第五章常用测试工具。

分类:黑盒测试工具、白盒测试工具、测试管理工具。

mi公司产品:

1、loadrunner:性能测试工具。

2、winrunner:功能测试工具(qtp:mi的qtp代替占有市场)

3、testdirector:测试管理工具(qc:hp收购mi公司后退出的一款td升级产品)

性能学习loadrunner,功能学些qtp,管理学习td

ibm rational公司的产品:

rational testmanager(测试管理工具)

rational clearquest(缺陷管理工具)

rational robot(功能/性能工具)

rational purify(白盒测试工具)

compuware公司产品。

软件测试技术试卷A

山东科技大学2014学年第一学期。软件测试技术 考试试卷 a卷 班级姓名学号。一 选择题 共20题每题1分共计20分 1 软件是由哪些部分组成 选择3项 a 数据 b 文档。c d 和数据。2 下面是软件缺陷的是 选择2项 a 千年虫。b 手机中病毒。c 计算机无法联网。d 应用程序闪退。3 下面是...

高级软件测试技术试卷

研究生课程考试成绩单。试卷封面 任课教师签名。日期 注 1.以 或大作业为考核方式的课程必须填此表,综合考试可不填。简要评语 栏缺填无效。2.任课教师填写后与试卷一起送院系研究生秘书处。3.学位课总评成绩以百分制计分。报告内容。阅读若干软件测试技术的文献,围绕软件测试中的某个特定主题,或特定软件测试...

专业技术人员职业道德教程学习笔记

三一文库 其他范文 日记范文 第一章道德的本质 内容及作用。要点 道德包括职业道德,职业道德是道德的有机组成部分,职业道德建设受社会的整体道德状况的制约。因此,研究公民职业道德修养,首先应对道德进行概略的了解和把握。一 道德的本质。1.道德的本质 一是调整人们之间以及个人与社会之间关系的行为规范 二...