Skip to content

Latest commit

 

History

History
55 lines (30 loc) · 3.77 KB

File metadata and controls

55 lines (30 loc) · 3.77 KB

什么是软件测试

什么是软件测试

软件测试是检查实际软件产品是否符合预期要求并确保软件产品无缺陷的方法。它涉及使用手动或自动工具执行软件/系统组件来评估一个或多个感兴趣的属性。软件测试的目的是识别与实际需求相比的错误、差距或确实的需求。

有些人更喜欢将软件测试定义为白盒测试(暂且理解为单元测试)和黑盒测试(暂且理解为回归测试)。简单来说,软件测试意味着对被测应用程序的应用。

如果软件中存在任何错误,可以尽早发现并在软件产品交付之前解决。经过适当测试的软件产品可确保可靠性、安全性和高性能,从而进一步节省时间、提高成本效益和客户满意度。

根据 ANSI/IEEE 1059,软件工程中的测试是评估软件产品以确定当前软件产品是否满足所需条件的过程。测试过程包括评估软件产品的功能是否符合要求,包括任何缺失的需求、缺陷或错误、安全性、可靠性和性能。

软件测试的类型

通常测试分为三类:

  • 功能测试。

  • 非功能测试或性能测试。

  • 维护(回归和维护)。

测试类别 测试类型
功能测试 单元测试
集成测试
冒烟
UAT(用户验收测试)
本土化
全球化
互操作性
非功能测试 可用性
可扩展性
负载
渗透测试
维护 回归
维护

软件工程中的测试策略

常见的测试策略有以下三种:

  • 单元测试:这种软件测试的基本方法是程序员遵循的来测试程序的单元。它可以帮助开发人员了解代码的各个单元是否正常工作。

  • 集成测试:重点关注软件的构建和设计。您需要查看集成单元是否正常工作。

  • 系统测试:在这种方法中,您的软件被作为一个整体进行编译,然后作为一个整体进行测试。该测试策略检查功能、安全性、可移植性等。

软件测试中的名称

  1. 测试用例:是指对一项特定的软件产品进行测试任务的描述,体现为测试方案、方法、技术和策略。基本内容应当包含前置条件、测试步骤、预期结果,在测试用例执行后应当包含实际结果、测试结果、执行时间、执行人。有时候也需要加上数据准备、测试环境、测试脚本等等

  2. 冒烟测试(smoking):冒烟测试就是完成一个新版本的开发后,对该版本最基本的功能进行测试,保证基本的功能和流程能走通。如果不通过,则打回开发那边重新开发;如果通过测试,才会进行下一步的测试(功能测试,集成测试,系统测试等等)。

  3. 黑盒测试:测试是通过提供输入并比较预期/实际输出来执行的。通过测试来检测每个功能是否都能正常使用。黑盒测试的测试对象是软件系统,而不是程序代码。测试人员不需要知道软件系统的内部实现,只需要知道软件的功能和性能要求。

  4. 白盒测试:结构测试和代码审查。不仅需要关注输入/输出,还要关注代码审查。

  5. 单元测试:对软件中的最小可测试单元在与程序其他部分相隔离的情况下进行检查和验证,最小可测试单元通常是指函数或者类。单元测试通常由开发完成,一般会伴随开发代码一起递交至代码库。

  6. 自动化测试:自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。目前市面上比较多的是接口自动化测试和UI自动化测试。

  7. 性能测试:通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

  8. ...