测试分类那么多,哪些是你最需要掌握的内容?

目录

一、按照测试对象分类

1.1、可靠性测试

1.2、容错性测试

1.3、安装卸载测试

1.4、内存泄漏测试

1.5、弱网测试

 二、按照是否查看代码分类

2.1、黑盒测试(系统测试)

2.2、白盒测试(单元测试)

2.3、灰盒测试(集成测试)

2.4、面试题:为什么不能让灰盒测试取代黑盒白盒测试?

2.5、面试题:黑盒测试和白盒测试哪个用的多?

三、按照开发阶段划分(只需清楚概念)

3.1、单元测试

3.2、集成测试

3.3、系统测试

3.4、验收测试

3.5、冒烟测试

3.6、回归测试


一、按照测试对象分类

1.1、可靠性测试

        可靠性测试是指系统正常运行的能力或者程度,一般通过可靠性的一个时间占比进行表示,计算方法如下:

可靠性 = 正常运行时间 / (正常运行时间 + 非正常运行时间) * 100%;

例如:检验一个人上班的专注程度(可靠性),假设上班时间总共为4个小,并且这个人其中有一个小时在打游戏

        那么通过 总时间 - 打游戏时间 便可以知道他的正常正常运行时间为3个小时;根据公式:可靠性 = 正常运行时间 / (正常运行时间 + 非正常运行时间) * 100% = 3 / (3 + 1) * 100% = 75%;

        最后, 不同的应用系统,可用性要求不一样;非实时性的信息系统或一般网站要求都很低,99%和99.5%就可以了,但是军事系统,要求则很高;

1.2、容错性测试

        容错性测试是指系统能够处理异常,用户的错误操作产生了异常不至于是系统崩溃的一个抗压性测试;

容错性测试包含以下方面:

        1.输入异常数据或进行异常操作,检验系统的保护性,若系统容错性好,则可以将异常在系统内部消化掉,不会产生崩溃;(比如校验测试、环境容错性测试、界面容错性测试);

        2.灾难恢复性测试,通过各种手段强制软件发生故障,然后验证已保存的用户数据是否丢失,是否能尽快恢复;

容错性和可靠性的区别:

        假设,有一架飞机,飞机有三个引擎,其中一个引擎坏了(不可靠性的表现),但是飞机依然可以正常飞行(容错性的表现);

1.3、安装卸载测试

        安装和卸载都是APP的基本功能,一旦出错,就属于优先级最要紧的Critical的缺陷。(工作中很容易遗漏这一项测试,我们因该要引起注意)

主要需要考虑以下方面:

  • 软件是否有不同的安装卸载方式;
  • 是否可以在不同环境系统下安装(兼容性测试);
  • 安装或卸载过程中是否可以手动暂停或取消;
  • 安装空间不足是否有提示;
  • 是否可以正常卸载;
  • 安装或卸载中出现如,死机、断电、断网问题是否可以正常应对;

1.4、内存泄漏测试

        内存泄漏简单来说就是指,用过的内存,忘记释放就会累积起来,最后可能耗尽内存,使软件越来越慢,最后停止响应;

造成内存泄漏的原因常见的有以下几种:

  • 分配完内存忘记回收;
  • 写程序时,写出死循环造成无法回收;
  • 某些API函数使用不正确;

内存泄露检测方法:

  • 人工静态法:就是我们依照经验用肉眼去检查;
  • 自动工具法:借助测试内存泄漏工具,如:Visual Leak Detector,记录每次内存分配,告诉用户内存是怎么泄漏的;

1.5、弱网测试

        简单来讲,就是我们在地铁,电梯,车库,这些网络状况不好的情况下(弱网环境),去关注软件的运行状态,检查出现丢包、延时软件的处理机制,避免数据流失;

例如:我们用手机一直刷不到内容,就可能会出现anr弹窗,如果网络不好,就可能会造成客户端频繁去向服务器发送请求;

怎么实施弱网测试?

借助工具模拟弱网环境:Fiddler~

1.打开弱网设置选项

2.打开设置弱网的脚本

3. 设置速率


 二、按照是否查看代码分类

2.1、黑盒测试(系统测试)

        纯功能测试,不关注程序内部具体实现

优点:

  • 不需要了解程序代码具体实现;
  • 从用户角度出发设计测试用例,容易知道用户会用到哪些功能,遇到哪些问题,锻炼测试人员的思维;
  • 不容易遗漏软件需求文档中需要测试的功能;

缺点:

不可能覆盖到所有代码;

黑盒测试用到的方法:

等价类、边界值、因果图、场景法、错误猜测法等;

2.2、白盒测试(单元测试)

        针对程序的内部实现进行的测试

目的:

        通过检查软件内部逻辑,对然间逻辑路径进行覆盖测试;在程序不同地方设置检查点,检查程序状态,以确定实际运行状态与预期是否符合一直;

主要测试方法:

语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖;

2.3、灰盒测试(集成测试)

        介于黑盒白盒测试之间的一种测试,不仅关注输入、输出的正确性,同时也关注程序内部的情况;

2.4、面试题:为什么不能让灰盒测试取代黑盒白盒测试?

        灰盒测试没有白盒测试那么详尽,灰盒测试也没有黑盒测试覆盖产品的广度大,所以灰盒测试不能取代黑百盒测试;

2.5、面试题:黑盒测试和白盒测试哪个用的多?

这道题还有一种问法(回答方法都一样):常见的测试方法有哪些?那种测试方法用的最多?

        黑盒测试和白盒测试,测试人员都会使用到,在工作中根据实际情况来结合白盒测试和黑盒测试。通常来说测试人员使用黑盒测试相对要多一点;

PS:回答上面这句话后再给面试官说说自己掌握了哪些黑盒设计测试用例的方法(等价类,边界值,正交法,场景法,错误猜测法等等),以及这些方法的适用场景。


三、按照开发阶段划分(只需清楚概念)

3.1、单元测试

        单元测试就是对软件的“最小单元”进行测试。目的是为了检验基本组成单位的正确性,测试的对象是软件设计的最小单位:模块(模块测试)。如:白盒测试。

3.2、集成测试

        集成测试就是将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。集成主要目的是检查软件单位之间的接口是否正确;如:灰盒测试。

3.3、系统测试

        系统测试将软件测试看成一个系统的测试,不关注内部实现细节。包括对功能、性能以及软件所运行的软硬件环境进行测试。如:黑盒测试。

3.4、验收测试

        验收测试是部署软件之前的最后一个测试操作。它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,按照项目合同、任务书、双方约定的验收依据文档,向软件购买都展示该软件系统满足原始需求。

3.5、冒烟测试

        开发人员完成开发任务之后,交给测试人员进行测试的第一步,评估软件/系统是否具备可测试的条件;

3.6、回归测试

        对历史版本、历史共能进行测试,保证功能是符合要求的,借助自动化来进行回归测试;


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 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
发出的红包

打赏作者

陈亦康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值