软件测试的几种基本方法

    上次我们介绍了软件测试的基本概念及基本原则,今天我们就来看看软件测试的几种基本方法吧。

    首先,当然就是我们大家熟悉的黑盒测试和白盒测试,这是按是否查看程序内部结构分的。其次,还可以按是否运行程序分为静态测试和动态测试,按阶段可分为单元测试、集成测试、系统测试、验收测试、回归测试。除此之外还有冒烟测试、随机测试等。接下来就详细介绍一下以上几种测试。

一、按是否查看程序内部结构分为:

1、黑盒测试(Black Box Testing):

    黑盒测试是根据软件的规格对软件进行的测试,这类测试不考虑软件内部的运作原理,因此软件对用户来说就像一个黑盒子。简单来说,这种测试只关心输入和输出的结果,并不考虑程序的源代码。黑盒测试分为功能测试和性能测试:

1)功能测试(function testing),是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求。包括逻辑功能测试、界面测试、易用性测试和兼容性测试。

2)性能测试(performance testing),软件的性能主要有时间性能和空间性能两种。其中,时间性能主要指软件的一个具体事务的响应时间,空间性能主要指软件运行时所消耗的系统资源

2、白盒测试(White Box Testing):

    白盒测试是把测试对象看作一个打开的盒子。利用白盒测试法进行动态测试时,需要测试软件产品的内部结构和处理过程,不需测试软件产品的功能。与黑盒测试相反,这种测试就要研究程序里面的源代码和程序结构。

二、按是否运行程序分为:

1、静态测试(static testing):

    静态测试指测试不运行的部分,只是静态地检查程序代码、界面或文档可能存在的错误的过程。例如测试产品说明书,对此进行检查和审阅.。

2、动态测试(dynamic testing):

    动态测试是指通过运行软件来检验软件的动态行为和运行结果的正确性。具体操作就是输入相应的测试数据,检查输出结果和预期结果是否相符的过程。

三、按阶段分为:

 

1、单元测试(Unit Testing):
    单元测试是最微小规模的测试,测试的是某个功能或代码块。典型地由程序员而非测试员来做,因为它需要知道内部程序设计和编码的细节知识。

 

2、集成测试(Integration Testing):
    集成测试是指一个应用系统的各个部件的联合测试,以决定他们能否在一起共同工作并没有冲突。部件可以是代码块、独立的应用、网络上的客户端或服务器端程序。这种类型的测试尤其与客户服务器和分布式系统有关。一般集成测试以前,单元测试需要完成。

 

3、系统测试(System Testing):
    系统测试是将整个软件系统看做一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。

 

4、验收测试(Accept Testing):
    验收测试是基于客户或最终用户的规格书的最终测试,或基于用户一段时间的使用后,看软件是否满足客户要求。一般从功能、用户界面、性能、业务关联性进行测试。

 

5、回归测试(Regression testing):

 

    回归测试是指在发生修改之后重新测试先前的测试以保证修改的正确性。理论上,软件产生新版本,都需要进行回归测试,验证以前发现和修复的错误是否在新软件版本上再次出现。

四、其他类型测试:

1、冒烟测试(smoke testing):

    冒烟测试的名称可以理解为该种测试耗时短,仅用一袋烟功夫足够了。也有人认为是形象地类比新电路板基本功能检查。任何新电路板焊好后,先通电检查,如果存在设计缺陷,电路板可能会短路,板子冒烟了。冒烟测试的对象是新编译的每一个需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。冒烟测试的执行者是版本编译人员。

2、随机测试(random testing):

    随机测试是指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。

 

 

    以上就是几种常用的软件测试方法,当然还有很多其他的测试方法(比如逆向测试,极限测试等),在这里就不一一介绍了。下周预告:软件测试的几种常用工具。下周见~

转载于:https://www.cnblogs.com/caoyue/p/4356479.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件测试是确保软件质量的重要环节,基本测试方法包括以下几种: 1. 黑盒测试:黑盒测试是基于软件功能和需求规格的测试方法测试人员只关注输入和输出,不考虑内部实现细节。常用的黑盒测试技术包括等价类划分、边界值分析、决策表等。 2. 白盒测试:白盒测试是基于软件内部结构和代码的测试方法测试人员可以查看源代码并了解内部逻辑。常用的白盒测试技术包括语句覆盖、分支覆盖、路径覆盖等。 3. 灰盒测试:灰盒测试是黑盒测试和白盒测试的结合,既考虑了功能需求,也考虑了内部结构。测试人员可以部分了解内部实现,但不需要详细了解所有代码。 4. 功能测试:功能测试是验证软件是否按照需求规格书中定义的功能进行工作。通过输入不同的数据和操作,检查软件是否能正确响应并产生预期的结果。 5. 性能测试:性能测试是评估软件在不同负载条件下的性能表现,包括响应时间、吞吐量、并发性等指标。常用的性能测试方法有负载测试、压力测试、稳定性测试等。 6. 安全测试:安全测试是评估软件系统的安全性和防护能力,包括漏洞扫描、渗透测试、权限控制测试等。 7. 兼容性测试:兼容性测试是验证软件在不同操作系统、浏览器、设备等环境下的兼容性。通过测试软件在各种环境下的功能和性能是否正常工作。 8. 用户界面测试:用户界面测试是验证软件的用户界面是否符合设计规范,是否易于使用和理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值