测试基础04:软件测试的定义、目的、内容、特点、原则

课程大纲

1、软件测试的定义

1.1一句话

        为了发现程序中错误而执行程序的过程。

1.2官方定义

        a.用来促进鉴定软件的正确性、完整性、安全性和质量的过程。

        b.是一种实际输出与预期输出之间的审核或者比较过程。

        c.是以评价一个程序或者系统属性为目标的任何一种活动。测试是对软件质量的度量。

        d.使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。

1.3经典定义

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

2软件测试的目的

1.短期(当下)

        1、检验产品是否符合用户需求;

        2、发现程序存在的代码或业务逻辑错误;

        3、发现程序存在的代码错误。

        4、提用户的体验

2.长远看:

        1、避免重复出错

        2、测试提效

        3、产品质量提升

3、软件测试的内容

        贯穿于整个软件生命周期,在开发的不同阶段,测试不同内容。

1.需求阶段

        分析与评审需求规格说明书(即需求文档)的合理性、可行性等

        分析与评审产品原型(同上)。

2.设计阶段

        分析与评审UE、UI设计图(交互、界面)

        分析与评审前后端开发设计方案(数据、逻辑等)

3.测试阶段

        测试计划、测试方案设计、测试用例设计;

        测试执行:功能测试即黑盒测试)、接口测试性能测试白盒测试(又名结构测试/逻辑驱动测试)安全测试……

测试报告输出

4.交付/上线前

        验收测试

5.交付/上线后

        线上质量监控

……

4、软件测试的特点

1.侧重事后检测

        通过测试提测的软件,验证是否符合需求。

2.着眼于软件

        走查开发文档、代码,运行软件,找出问题,报告质量。

3.必须假设软件存在问题

        奔着搞崩系统去,发现系统的问题,从而解决问题。

4.找出更多的问题

        测试找出问题越多,用户遇到的问题就会越少。

5、软件测试遵循的原则

1.尽早介入

        需求分析阶段即应介入。

2.源于需求

        所有的测试都应追溯到用户需求。

3.程序员回避

        程序员除了单元测试,应该避免检查自己的程序。

        因为程序员对于自己的作品、思维具有局限性,无法保证测试质量。

        交给第三方或者专业测试,运用各种测试技术,利用丰富的测试经验和对bug的敏感,去提高软件的质量。

4.制定严格的测试计划

        准备测试所需人力物力资源,把控测试进度,降低​项目风险。

5.用例需完备

        设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下还要制造极端状态和意外状态。

6.二八原则

        测试中,80%的错误很可能起源于20%的模块中。

        举例说明:

        泊松分布,一种离散概率分布。

        主要用于描述单位时间(或空间)内,随机事件发生次数的概率分布,如服务请求次数、候客人数、机器故障数等。

        世界80%的金钱掌握在20%的人手中,网站/系统全天访问量的80%会集中在20%的时间段内完成……

7.严谨

        对错误结果要进行确认,不能发现异常就直接提bug。

        严格要求,则提bug需从前到后排查后,尽量找到出错源头并附排查过程图文,辅助开发定位与解决问题。

8.适可而止

        测试无穷尽,完全测试是不可能的,测试需要终止。(衡量成本)

9.文档存留

        妥善保存测试过程中的所有文档。

软件测试仅仅只是软件质量保障的重要手段想要真正的提高软件产品的质量,需要通过持续不断的过程改进

附:课程完整思维导图

参考文章:

  1. 《软件测试的定义及如何进行分类》https://m.elecfans.com/article/998116.html
  2. 《软件测试的定义以及分类》https://www.cnblogs.com/liyongmei/p/10633744.html

  • CSDN:https://blog.csdn.net/weixin_37846886
  • 简书:https://www.jianshu.com/u/15e7fc1f605a
  • B站:【土小帽软件测试(行入门到高级)-哔哩哔哩】 https://b23.tv/1c2U5fN
  • 测试资源(百度网盘):https://pan.baidu.com/s/1Ypm8-VKuPurLtu0bCJovnA?pwd=5eji 提取码: 5eji
  • 腾讯文档】流程图https://docs.qq.com/s/FQZsGpzsiYH9wj26JvSaFW

  • 11
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件测试工程师需要掌握的基础知识包括以下几个方面: 1. 计算机基础知识:了解计算机的组成部分、操作系统的分类以及常见的系统架构,如B/S和C/S。还需要熟悉常用的DOS命令。 2. 软件测试基础理论知识:了解软件测试目的定义原则,以及产品质量模型和软件测试的基本流程。 3. Linux命令:掌握常用的Linux命令,因为在软件测试中可能需要搭建测试环境或在服务器上部署自动化项目,而服务器通常使用Linux系统。 4. SQL语句:熟悉数据库的基本操作,包括增、删、改、查的SQL语句。在软件测试中,常常需要操作数据库进行测试结果的校验或测试数据的准备。 5. 手工测试用例的编写:作为软件测试工程师,编写高覆盖率、低重复率的测试用例是最基本的要求。需要不断追求编写高质量测试用例的能力。 6. 缺陷的管理:了解如何管理测试人员提出的缺陷,以确保项目中的缺陷能够及时被修复。 综上所述,软件测试工程师需要掌握编程语言、数据库、测试理论、测试工具、操作系统等方面的基础知识。这些知识将有助于他们在软件测试过程中更好地进行工作。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [软件测试工程师要学习基础知识,你知道多少?](https://blog.csdn.net/weixin_67553250/article/details/125262429)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [学习软件测试需要掌握哪些知识点呢(看这篇就行了)](https://blog.csdn.net/m0_57290404/article/details/120354535)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [如何写软件测试的归档报告?](https://blog.csdn.net/weixin_51689029/article/details/124024137)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值