1.测试知识点

本文全面解析软件测试的概念、目的、原则、流程,介绍静态、动态、黑盒、白盒、α、β测试,以及功能、性能、压力测试。探讨测试用例设计方法,软件产品质量特性,软件缺陷级别,测试工具,缺陷处理流程,测试计划和用例设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.测试知识点

1.测试定义

为了发现软件中的缺陷而运行软件的过程。

2.什么是软件测试

在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否满足设计要求进行评估的过程。

3.软件测试的目的

测试是程序的执行过程,目的在于发现错误。

一个成功的测试用例是发现了至今未发现的错误。

确保产品完成了它所承诺或者公布的功能,并且用户可以访问到功能都有明确的书面说明。

确保产品满足性能和效率的要求。

确保产品是健壮的和适应环境的。

4.软件测试的原则

1.测试用例中一个必须部分是对预期输出或者结果进行定义。

2.测试用例的编写不仅应当根据有效和预料到的输入情况,而且也应当根据无效和未预料到的输入情况。

3.应当避免测试用例用后即弃,除非软件本身就是一个一次性的软件。

4.程序员避免测试自己编写的程序。

5.编写软件的组织不应当测试自己编写的软件。

6.应当彻底检查每个测试的执行结果。

7.检查程序是否“未作其应该做的”仅仅是测试的一半,测试的另一半是检查程序是否“做了其不因该做的”。

8.计划测试工作不应当默许假定不会发现错误。

9.程序某部分存在更多错误的可能性,与该部分已经发现的错误成正比。

10.软件测试是一项极富创造性,极具智力的挑战性工作。

4.测试流程

1.分析产品需求点

2.制定测试计划

3.编写测试用例

4.执行测试用例

5.发现并提交Bug

6.对已经修正的Bug进行回归测试

7.将修正完成的Bug,状态改为Closed

8.对未修正的Bug,状态改为Reopen

5.简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试、 β测试

静态测试是不运行程序本身而寻找程序代码中可能存在的错误或评估程序代码的过程。

动态测试是实际运行被测程序,输入相应的测试实例,检查运行结果与预期结果的差异,判定执行结果是否符合要求,从而检验程序的正确性、可靠性和有效性,并分析系统运行效率和健壮性等性能。

黑盒测试一般用来确认软件功能的正确性和可操作性,目的是检测软件的各个功能是否能得以实现,把被测试的程序当作一个黑盒,不考虑其内部结构,在知道该程序的输入和输出之间的关系或程序功能的情况下,依靠软件规格说明书来确定测试用例和推断测试结果的正确性。

白盒测试根据软件内部的逻辑结构分析来进行测试,是基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量,一般白盒测试由项目经理在程序员开发中来实现。

α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。

β测试是软件的一个或多个用户在的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。

6.测试用例设计方法

白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖

黑盒测试:边界值分析法、等价类划分、错误猜测法、因果图法、状态图法、测试大纲法、随机测试、场景法

1.等价类划分方法

2.边界值分析的方法

3.错误分析的方法

4.因果图分析的方法

5.判断表驱动分析方法

6.正交试验设计方法

7.功能图分析方法

7.功能测试、性能测试、压力测试

功能测试:利用人为和人为思维进行软件测试

性能测试:利用工具编写脚本语言进行自动化测试,性能测试常用的工具有JMeter和LoadRunner

压力测试:压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等。

8.软件产品质量特性

功能性:适应性、准确性、互操作性、依存性、安全性。

可靠性: 成熟性、容错性、易恢复性。

可使用性:易理解性、易学习性、易操作性。

效率:时间特性、资源特性。

可维护性:易分析性、易变更性、稳定性、易测试性

可移植性:适应性、易安装性、遵循性,易替换性。

5.软件缺陷

计算机系统或者程序中存在的一种破坏正常运行能力的问题、错误、或者隐藏的功能缺陷。

6.测试缺陷的级别

1.致命的:致命的错误造成系统的奔溃、死机、数据的丢失,主要功能全部丢失,导致本模块以及相关模块异常等问题。如代码错误,死循环,数据库发生死锁、与数据库连接错误或数据通讯错误,未考虑异常操作,功能错误等。

2.严重的:功能或者特性没有实现或部分功能丧失,问题局限在本模块,导致模块功能失效或异常退出。如致命的错误声明,程序接口错误,数据库的表、业务规则、缺省值未加完整性等约束条件。

3.一般的:没有实现很好的功能,没有达到预期的效果,如提示信息不准确,用户界面差,操作时间长,模块功能部分失效等,打印内容、格式错误,删除操作未给出提示,数据库表中有过多的空字段等。

4.微小的:使操作者不方便或遇到麻烦,但它不影响功能过的操作和执行,如错别字,文字排列不整齐,辅助说明描述不清楚。

7.软件测试的工具

1.禅道项目管理工具

2.BUGfree缺陷管理工具

3.BUGZilla管理工具

4.JIRA管理工具

8.BUG生命周期

提交–确认–分配–修复–验证–关闭

9.软件生命周期的六个阶段

1.问题的定义以及规划

2.需求分析

3.软件设计

4.程序编码

5.软件测试

6.运行维护

10.软件测试的生命周期

测试计划–测试设计–测试开发–测试执行–测试评估

11.项目整体流程

搭建缺陷管理环境、测试环境、配置管理环境–编写测试计划–设计测试用例–编写测试用例

–测试用例评审–执行测试–缺陷管理–测试报告输出

12.实际项目中测试计划

1.对客户提供的或者需求分析人员编写的用户需求文档或者规格说明书进行分析,提炼测试要点

2.根据测试要点编写测试用例

3.评审组对测试用例进行评审–修改–再次评审–初步定稿

4.执行测试:按照测试用例对系统的功能验证以及客户的需求验证–将测试产生的Bug录入缺陷管理系统–新版本发布后对本次新增加的功能以及开发人员修正的Bug进行回归测试-根据项目需求提交测试报告

13.如何制定测试过程中的时间进度表

根据项目需求、开发周期、开发人员的开发进度等时间来制定测试时间的初稿,并将测试时间进度表交与整个项目团队成员,大家一起分析讨论,最终与所有人达成共识并制定出大家都可以执行的测试时间进度表。

时间表中包括了开发人员提交功能或者功能模块的时间,为了更好的执行测试,配合测试人员进行功能测试培训的时间,测试执行的时间,都详细的写到WBS中,并按照这个时间进度表来执行项目的测试任务。

14.测试计划都包括那些项

1.测试计划目标

2.测试参考文档

3.测试术语与定义

4.测试内容

5.测试人员分功

6.测试进度

7.测试流程

8.测试工具

9.测试缺陷管理

10.测试的风险分析

15.测试用例如何设计

在测试用例设计之前首先要熟悉客户的需求文档或者需求规格说明书,以做到对被测系统的熟悉,充分熟悉系统的详细功能,并在熟悉过程中即使与研发人员和客户有效沟通。然后熊需求中的各个模块的详细功能点编写一个测试要点的文档,根据测试要点设计测试用例,测试要点和测试用例是一对多的关系。

16.测试用例包括那些项

1.产品名称

2.功能模块

3.测试编号

4.编写人

5.测试标题

6.预置条件

7.测试步骤

8.预期结果

9.实际结果

17.缺陷处理流程

1.将缺陷的详细信息录入管理系统并分配给对应的开发人员

2.如果遇到一些难以再现的缺陷,在开发人员修正过程中配合开发人员进行Bug再现

3.开发人员修正Bug后,会在缺陷管理系中将修正的Bug状态改为Fixed

4.新版本发布后,测试人员将Bug状态已经更正为Fixed的Bug进行回归测试。通过后Bug关闭,否则改为Reopen状态,继续让开发来修正。并等待下一个版本的二次回归测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值