最基础的软件测试总结

按测试手段来分类

测试时对象可见度:黑盒测试、白盒测试

根据状态:静态测试、动态测试

测试执行的方式:手工测试、自动化测试
在这里插入图片描述
黑盒测试

在测试中把我们被测试的系统或者软件看成一个不能打开的盒子,在完全不考虑程序内部结构和内部特性的情况下,通过相关暴露出来的接口来对程序进行测试,黑盒测试只检查程序的功能是否按照我们需求规格说明的规定能够正常的使用,程序是否能够适当的接收数据并产生正确的输出信息。

黑盒测试着眼于程序的外部结构不考虑内部的逻辑。一般来说针对软件外面的界面或者可见的功能来进行测试。

黑盒测试更多的从用户的视角通过不同的数据和事件驱动我们的系统,并通过输出结果进行判断。
黑盒测试的优缺点

优点:

1、 容易实施,不需要关注内部的实现

2、 更贴近用户的使用角度

缺点:

1、 测试覆盖率较低,一般只能覆盖到代码量的不到40%(系统不可见,因为不了解内部的实现,很多逻辑分支我们不清楚,所以测试很难覆盖到这些分支)

2、 针对黑盒的自动化测试,复用率较低,维护成本较高(黑盒测试最关注的功能,软件产品在研发的迭代时期最经常变化的是功能,重复的利用率比较低,经常变化脚本的维护成本比较高)

黑盒测试的主要设计方法

等价类划分法:针对程序有很对的输入条件,把所有的输入当中等价的归为一类,这样最后会形成若干典型的代表性的输入,通过这些典型的数据进行测试用例的设计。

边界值分析法:对输入或输出的边界值进行测试

错误推测法:基于经验或者直觉来判断程序中可能出现错误的地方,从而针对性的设计用例的方法。

因果图法: 拿到程序的需求规格说明书,针对每一种输入和输出在因果图中看成原因和结果,对输入和输出赋以特定的标识符,然后将这些情况形成因果图。

白盒测试

测试人员对内部结构非常了解,逻辑结构对测试人员是透明的,又称为结构化测试和透明盒测试,针对程序的逻辑结构设计测试用例,用逻辑的覆盖率衡量测试的完整性。

主要的逻辑单元:语句,条件,条件组合,分支,路径

白盒测试的优缺点

优点
1、 迫使测试人员去仔细思考软件的实现,理解原理
2、 可以检测代码中的每条分支和路径
3、 揭示隐藏在代码中的错误
4、 对代码的测试比较彻底

缺点

1、 昂贵(较高的覆盖率,工作量大)
2、 无法检测代码中遗漏的路径和数据敏感性错误(无法发现少写的逻辑)
3、不能直接验证需求的正确性(针对代码层次)
白盒测试的主要测试方法

代码检测法:主要包括桌面检查、代码审查,主要检查代码和设计的一致性。

静态结构分析法:测试者通过使用测试工具来分析源代码的系统结构、数据结构,内部的控制逻辑。通过内部的结构设计测试用例

静态质量度量法:根据标准的质量模型,构造质量的度量模型用以评估软件的各个方面的要素

逻辑覆盖法:语句覆盖,条件覆盖,条件组合覆盖,分支覆盖(判定覆盖),路径覆盖,条件和判定的组合覆盖

基本路径测试法:白盒测试中非常主要的测试方法,在程序控制流图的基础上通过分析控制构造的圈复杂度(在软件测试的概念里,圈复杂度用来衡量一个模块判定结构的复杂程度,数量上表现为独立线性路径条数,即合理的预防错误所需测试的最少路径条数。圈复杂度大说明程序代码可能质量低且难于测试和维护,根据经验,程序的可能错误和高的圈复杂度有着很大关系。)找出基本可执行的路径的集合进而设计测试用例的方法

灰盒测试

介于黑、白测试之间的,关注输出对于输入的正确性,同时也关注内部表现

静态测试

静态测试是指无须执行被测程序,而是通过评审软件文档或代码,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率。

方法:互相审查,走查,会议

动态测试

动态测试是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等。

手工测试

由专门的测试人员从用户视角来验证软件是否满足设计要求的行为。更适合针对深度的测试和强调主观判断的测试。

自动化测试

使用单独的测试工具软件控制测试的自动化执行以及对预期和结果进行自动检查。
单元测试、接口测试、性能测试等
在这里插入图片描述
最后:希望大家都越来越好。如果对python自动化测试、web自动化、接口自动化、移动端自动化、面试经验交流等等感兴趣的测试人,欢迎私信或者加入我们的Q群(见图),获取更多大厂技术、面试资料,一起进步。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值