常见软件测试
作者:互联网
测试定义
软件测试(英语:Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。
1、单元测试
单元测试即为将整个软件分解为各个功能,随后对单元进行测试。此类测试策略的优点在于所需分析数据较少,且针对性较强,程序开发者于开发过程中可通过操作经验明确出现问题的大致区域,随后针对此类问题对相关单元展开分析,进行问题排查。但需注意的是,某些程序中无具体单元驱动程序,即单个单元无法有效驱动,易出现问题,若针对此类软件展开测试,需重点注意此类分解单元。
2、集成测试
集成测试与单元测试相反,原理为将部分需测试部分作为整体进行集成,随后针对此类集成部分进行测试。测试要求为此类被测试集成题应具有一定的结构,且属于非渐增方式集成。对于较大软件而言,集成测试方式较单元测试方式而言较为繁琐,目前多数大型软件的测试皆采取渐增方式进行测试。渐增测试方式为集成测试方式的衍生,其能够按照不同次序对软件进行测试,日常测试中,常将两类方式进行集成测试,随后按照次序展开选择。
3、黑盒测试
黑盒测试,顾名思义即为将软件测试环境模拟为不可见的“黑盒”。通过数据输入观察数据输出,检查软件内部功能是否正常。测试展开时,数据输入软件中,等待数据输出。数据输出时若与预计数据一致,则证明该软件通过测试,若数据与预计数据有出入,即便出入较小亦证明软件程序内部出现问题,需尽快解决。
黑盒测试的优点有:
1)比较简单,不需要了解程序内部的代码及实现;
2)与软件的内部实现无关;
3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
5)在做软件自动化测试时较为方便。
黑盒测试的缺点有:
1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
2)自动化测试的复用性较低。
4、白盒测试
白盒测试相对于黑盒测试而言具有一定透明性,原理为根据软件内部应用、源代码等对产品内部工作过程进行调试。测试过程中常将其与软件内部结构协同展开分析,最大优点即为其能够有效解决软件内部应用程序出现的问题,测试过程中常将其与黑盒测试方式结合,当测试软件功能较多时,白盒测试法亦可对此类情况展开有效调试。其中,判定测试作为白盒测试法中最为主要的测试程序结构之一,此类程序结构作为对程序逻辑结构的整体实现,对于程序测试而言具有较为重要的作用。此类测试方式针对程序中各类型的代码进行覆盖式检测,覆盖范围较广,适用于多类型程序。实际检测中,白盒测试法常与黑盒检测法并用,以动态检测方式中测试出的未知错误为例,首先使用黑盒检测法,若程序输入数据与输出数据相同,则证明内部数据未出现问题,应从代码方面进行分析,若出现问题则使用白盒测试法,针对软件内部结构进行分析,直至检测出问题所在,及时加以修改。
白盒测试的缺点有:
1)程序运行会有很多不同的路径,不可能测试所有的运行路径;
2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;
3)系统庞大时,测试开销会非常大。
标签:集成,黑盒,白盒,常见,此类,测试,软件,软件测试 来源: https://blog.csdn.net/z_ipython/article/details/94589401