软件测试基础
Posted g0rez
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件测试基础相关的知识,希望对你有一定的参考价值。
软件测试
1.软件测试定义
软件测试就是指,用人工或者自动化的手段来进行测试的过程,目的在于检验它是否满足规定的需求,并弄清楚预期结果与实际结果的差异。
(目的:在最短时间内找出尽可能多的缺陷)
2.软件测试的流程
需求分析 编写测试计划 设计测试用例 执行测试用例 缺陷管理 测试报告
冒烟测试:对软件基本功能进行测试,查看主要的这些功能是否有问题
3.测试项目的具体工作
搭建测试环境
撰写测试用例
执行测试用例
写测试计划、测试报告
测试,并提交Bug表单
跟踪Bug的修改情况
执行自动化测试,编写脚本、执行、分析、报告
进行性能测试、压力测试等其他测试,执行、分析、调优、报告
4.软件测试的分类
4.1按开发阶段划分(4个流程)
单元测试 集成测试 系统测试 验收测试
系统测试包括:功能测试、性能测试、可靠性测试、安全性测试
注—各个阶段使用的测试方法:
单元测试——白盒测试
集成测试——近似灰盒测试
系统测试和验收测试——黑盒测试
软件验收测试包括 正式验收测试, alpha测试, beta测试。
正式验收测试;
非正式验收测试其中包括α测试(由用户、测试人员、开发人员共同参与的内部测试。)
和β测试(内测后的公测,即完全交给最终用户测试。)
4.2按测试技术划分(3个)
白盒测试 逻辑覆盖法
黑盒测试 等价类 边界值 判定表 错误推测法 功能分解 场景法
灰盒测试 多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。
4.3按测试实施组织划分(3个)
开发方测试
用户测试
第三方测试
5.回归测试——不属于软件测试步骤
指在发生修改该之后重新测试先前的测试用例以保证修改的正确性。
理论上,软件产生新版本,都需要进行回归测试,以验证以前发现和修复的错误是否在
新软件版本上再次出现。根据已经修复好了的缺陷再重新进行测试
6.软件开发流程-软件生命周期
需求分析 概要设计 详细设计 编码 测试 交付 验收 维护
7.什么是Bug?
主要是用来表示电脑系统或者程序中隐藏的错误、缺陷、漏洞等问题。
8.测试用例包含哪些内容
一般情况下,一条测试用例,最基本要包含用例编号、所属模块、用例标题、前提条件、操作步骤、期望结果、实际结果这几大要素
9、软件测试与调试的区别
-
软件测试是找出软件已经存在的错误,而调试是定位错误,修改程序以修正错误;
-
测试的对像可以是文档和代码 而调试的对像只能是代码;
-
调试是随机性的 由程序员完成 为了程序可运行;测试是有目的性的 由测试人员完成为了程序可完成指定功能。
10、手动测试与自动化测试的优缺点
(1)手工测试优缺点
优点:
测试人员具有经验和对错误的猜测能力。具有审美能力和心理体验。具有是非判断和逻辑推理能力。
缺点:
1、重复的手工回归测试,代价昂贵、容易出错。
2、依赖于软件测试人员的能力。
(2)自动化测试优缺点
优点:
1、对程序的回归测试更方便。将回归测试自动运行,可以极大提高测试效率,缩短回归测试时间。
2、可以运行更多更繁琐的测试。
3、可以执行一些手工测试困难或不可能进行的测试。
4、更好地利用资源。
5、测试具有一致性和可重复性。由于测试是自动执行的,每次测试的结果和执行的内容的一致性是可以得到保障的,从而达到测试的可重复的效果。
6、测试的复用性。由于自动测试通常采用脚本技术,这样就有可能只需要做少量的甚至不做修改,实现在不同的测试过程中使用相同的用例。
7、增加软件信任度。由于测试是自动执行的,所以不存在执行过程中的疏忽和错误,完全取决于测试的设计质量。
缺点:1、不能取代手工测试
2、手工测试比自动测试发现的缺陷更多
3、对测试质量的依赖性极大
4、工具本身并无想像力
以上是关于软件测试基础的主要内容,如果未能解决你的问题,请参考以下文章