软件测试 分类

软件测试贯穿整个软件的生命周期,测试的目的不仅是发现程序的bug,更重要要检查程序是否满足客户需求。

自动化测试,覆盖度高,运行快,能帮助迅速发现问题,帮助产品快速迭代。但是manua 测试也必不可少,脚本的开发,维护,分析都是需要手动完成,只有自动化测试和手动结合,才会更大程度的保证产品质量。

软件测试份功能测试和非功能测试:

功能测试包含

  • 单元测试。在单元测试中,测试人员检查单个软件组件。目的是测试组件的行为是否符合要求。
  • 集成测试。集成测试处理的是在单个组件或模块组合在一个组中之后对它们进行测试。
  • 系统测试。测试人员执行测试用例来验证集成和完成的软件以及规范的符合性。
  • 健全性测试。这个测试逻辑推理与程序的工作有关。
  • 冒烟测试。烟雾测试测试简单而基本的功能,例如用户是否能够登录或注销。
  • 接口测试。这些测试检查两个软件之间的通信是否正常
  • 回归测试。这可能是最重要的测试阶段之一。在这里,整个应用程序的旧测试用例是在实现了新功能之后执行的。
  • Beta测试/验收测试。在这里,目标用户尝试产品并报告错误。

 

非功能测试:

  • 性能测试。在所需的工作负载下测试应用程序的性能或速度。
  • 负载测试:通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。

    压力测试:测试系统能承受的最大负载能力。目的在于发挖掘出目标服务系统可以处理的最大负载。

  • 并发测试。测试多用户并发访问统一数据,模块,应用时是否产生隐藏的问题,例如内存泄漏、线程锁、资源争用的。
  • 容量测试。这通过将数据库加载到增加的数据量来测试系统的性能。
  • 安全测试。这里,执行测试用例来检查系统是否受到来自内部和外部源的突然或蓄意攻击的保护。
  • 兼容性测试。执行测试用例以检查应用程序是否与不同的环境兼容。例如,如果您正在测试一个web应用程序,兼容性测试涉及网站在不同浏览器或设备上的工作方式。
  • 安装测试。这些测试检查产品在安装后是否按照预期工作。
  • 恢复测试。在这里,测试人员确定应用程序从硬件崩溃和故障中恢复的能力。
  • 可靠性测试。此过程检查应用程序在什么情况下可以在特定时间范围内执行特定任务而不会失败。例如,假设您正在测试一个加密货币挖掘应用程序。应用程序可以连续挖掘8个小时而不崩溃的场景可能是您在可靠性测试期间需要考虑的问题。
  • 可用性测试。可用性测试探索最终用户在学习、操作和准备输入和输出方面的易用性。
  • 符合性测试。这决定了系统是否符合外部和内部标准。
  • 本地化测试。在这里,测试人员根据当地或文化背景和环境检查产品的行为。
posted @ 2021-04-02 20:55  Gloria_Chen  阅读(108)  评论(0)    收藏  举报