几年前,我在Google上看到了这篇很棒的(PDF)文档。该文档在一个页面中解释了所有各种类型的软件测试的含义(例如,功能测试与集成测试和单元测试之间的区别是什么......)。这是一个非常方便的参考,但当然我没有保存链接,现在我无法在谷歌搜索时找到它(哦,具有讽刺意味的是无法谷歌Google文档)。
现在我知道确切地说这个问题有很好的答案,但是我特意找的是单页,打印格式的指南,我可以挂在办公室,而不是SO答案。
有人能指出我想到的Google文档,还是软件测试类型的任何其他好的单页细分?
答案 0 :(得分:31)
软件测试类型
软件测试生命周期是解释每个产品要进行的测试流程的过程。 V-模型即验证和验证模型是一个完美的模型,用于改进软件项目。该模型一方面包含软件开发生命周期,另一方面包含软件测试生命周期。软件测试人员的清单设置了一个基线,指导他进行日常活动。
黑匣子测试:它解释了向系统提供输入和检查输出的过程,而没有考虑系统如何生成输出。它也被称为行为测试。
功能测试:测试软件的功能要求。这将检查应用程序是否符合规范。
性能测试:此测试根据用户的要求检查系统是否正常运行。性能测试取决于内部或外部应用于系统的负载和压力测试。 负载测试:在此类性能测试中,系统超出限制,以便在应用更高负载时检查系统性能。 压力测试:在此类性能测试中,系统的测试超出了正常预期或运行能力。 可用性测试:这也称为“用户友好性测试”。它检查应用程序的易用性。
回归测试:回归测试是最重要的测试类型之一,它会检查应用程序的任何组件中的小变化是否会影响未更改的组件。这是通过重新执行应用程序的先前版本来完成的。
冒烟测试:它用于检查应用程序的可测试性,也称为“构建验证测试”或“链接测试”。这意味着,它会检查应用程序是否已准备好进行进一步的测试和工作,而无需处理更精细的细节。
完整性测试:完整性测试检查系统的行为。这也称为窄回归测试。
并行测试:并行测试是通过比较两个不同系统的结果来完成的,例如旧与新手动或手动与自动化。
恢复测试:恢复测试非常有必要检查系统能够在任何硬件故障,灾难性问题或任何类型的系统崩溃时恢复的速度。
安装测试:此类软件测试可识别安装过程导致错误结果的方式。
兼容性测试:兼容性测试确定受支持配置下的应用程序是否按预期执行,具有各种硬件和软件包组合。
配置测试:此测试用于测试兼容性问题。它确定硬件和软件的最小和最佳配置,并确定添加或修改内存,磁盘驱动器和CPU等资源的效果。
合规性测试:检查系统是否按照标准,程序和指南进行开发。
错误处理测试:这决定了系统正确处理错误交易的能力。
手动支持测试:此类软件测试是人与应用系统之间的接口。
系统间测试:此方法是两个或多个应用系统之间的接口。
探索性测试:探索性测试与临时测试类似,用于探索软件功能。
批量测试:此测试是在通过应用程序处理大量数据时完成的。
场景测试:场景测试提供了更加真实和有意义的功能组合,而不是通过域或组合测试设计获得的人工组合。
用户界面测试:执行此类测试以检查应用程序的用户友好性。用户应该能够在没有系统人员帮助的情况下使用该应用程序。
系统测试:此测试在完整的集成系统上进行,以评估系统是否符合指定要求。这样做是为了检查系统是否满足其功能和非功能要求,并且还旨在测试超出软件/硬件要求规范中定义的范围。
用户验收测试:执行验收测试以验证产品是否为客户所接受,以及是否符合该客户的指定要求。此测试包括Alpha和Beta测试。
Alpha测试:客户在封闭环境中在开发人员网站上执行Alpha测试。这是在系统测试之后完成的。
Beta测试:这是由客户在开放环境中在客户的网站上完成的。在执行这些测试时,开发人员的存在不是强制性的。这被认为是软件开发生命周期的最后一步,因为产品已经准备就绪。
白盒测试:这是向系统提供输入并检查系统如何处理输入以生成输出的过程。测试人员必须具备源代码的知识。
单元测试:单元测试在开发人员的网站上完成,以检查特定的代码/代码单元是否正常工作。它作为一个整体测试程序的单位。
静态和动态分析:在静态分析中,需要查看代码才能找出代码中的任何可能的缺陷。然而,在动态分析中,代码被执行并分析输出。
语句覆盖率:它确保代码的执行方式使应用程序的每个语句至少执行一次。
决策覆盖率:这有助于通过执行应用程序做出决策,至少一次判断它是真还是假。
条件覆盖率:在这种类型的软件测试中,每个条件都是通过在每种方式中使其成为真和假来执行的,至少一次。
路径覆盖:代码中的每个路径至少执行一次以获得完整路径覆盖,这是白盒测试的重要部分之一。
集成测试:当各种模块相互集成以形成子系统或系统时,执行集成测试。这主要集中在软件架构的设计和构建上。这进一步分为自下而上集成和自上而下集成测试。
自下而上的集成测试:此处首先测试最低级别的组件,然后使用“驱动程序”完成更高级别组件的测试。重复整个过程,直到测试所有更高级别的组件为止。
自上而下的集成测试这与自下而上的方法完全相反,因为它测试顶级模块,并使用' Stubs&逐步测试模块的分支。 #39;,直到相关模块结束。
安全测试:测试确认系统如何保护自己免受未经授权的内部或外部或故意破坏代码的影响;表示系统的安全测试。安全测试确保只有授权人员才能访问该程序。
变异测试:在变异测试中,应用程序将针对修复特定错误/缺陷后修改的代码进行测试。
使用以下链接获取打印格式 Types of Software Testing
答案 1 :(得分:3)