软件测试笔记 1

软件测试是通过考虑软件的可靠性,可伸缩性,可移植性,可重用性,可用性和评估软件组件的执行来查找软件错误或缺陷来识别软件正确性的过程。

软件测试提供了软件的独立视图和目标,并确保软件的适用性。它涉及在所需服务下测试所有组件,以确认它是否满足指定的要求。该过程还向客户提供有关软件质量的信息。

测试是一组用于预定义脚本下确定应用程序正确性的技术。

测试无法找到应用程序的所有缺陷,其主要目的是检测应用程序的故障,以便发现和纠正故障。其无法证明产品可以在所有条件下都能正常运行,仅表明它在某些特定条件下无法正常工作。

测试提供了比较软件的行为和状态与机制的比较,可以包括相同指定产品的过去版本,可比较产品,以及预期目的,相关标准或其他标准的界面等。

测试包括检查代码以及各种环境中的代码执行,条件以及代码的所有检查方面。

软件开发生命周期

软件开发生命周期是一个创建软件开发结构的过程。

需求 → 设计 → 开发 → 测试

  1. 需求阶段

    这是软件开发生命周期中最关键的阶段。

    在此阶段,客户说明要求,规格,期望以及产品或者软件相关的任何其他特殊要求。

  2. 设计阶段

    这是软件开发生命周期中的高优先阶段。

    设计阶段包括根据需求阶段对新软件的详细分析,系统的逻辑设计转换为物理设计。

    需求阶段的输出是所需事物的集合,设计阶段为实现这些需求提供了方法。

  3. 建设/设计阶段

    这是软件开发周期中花费最长的时间,使用最集中的方法的阶段。

    在成功完成需求和设计阶段后,下一步是将设计实现到软件系统的开发中。

    编码由开发团队根据前一个阶段讨论的设计开始,并根据需求阶段讨论的客户要求产生的所需的结果。

    前端开发人员开发简单的且具有吸引力的GUI和必要的接口,以便与后端操作进行交互,后端开发人员根据所需的操作进行后端编码。

  4. 测试阶段

    测试阶段是完成软件系统的最后一步。

    在获得开发的的GUI和后端组合之后,将根据需求阶段中的要求对其进行测试。测试确定软件是否实际按照需求阶段中的要求提供结果。

    测试计划包括所有类型的测试。如果软件中存在任何缺陷,或者它没有按照预期工作,那么测试团队会向开发团队提供有关该问题的详细信息。

  5. 部署/交付阶段

    当软件测试完成,且结果令人满意,并且软件工作中没有余留问题时,就可以进行交付,供客户使用。

    当客户收到产品,首先进行beta测试。在beta测试中,客户可以要求软件中没有但在需求文档或任何其他GUI更改中提及的任何更改,以使其更加用户友好。

  6. 维护阶段

    维护是软件开发生命周期的最后和持久阶段。

    当客户开始使用软件时,实际问题就开始发生,那时需要解决这些问题。同时,还包括对硬件和软件进行更改以维持其运营效率。

软件测试生命周期

  1. 需求分析

    手动测试程序的第一步是需求分析。测试人员分析需求文档,检查客户所述的要求。在检查要求后,测试人员制定测试计划以检查软件是否满足要求。

    应当提供应用程序体系结构文档和明确定义的验收标准。

    准备所有要求和查询的列表,列出要执行的所有类型的测试,列出测试环境详细信息。

    此阶段的交付成果是列出可测试要求和测试环境详细信息的所有必要测试。

  2. 测试计划

    创建测试计划是软件测试生命周期的关键阶段,定义了所有测试策略。

    测试人员确定整个项目的估计工作量和成本。

    列出测试中涉及的方法,测试过程概述。

    解决测试环境,准备测试计划和控制程序,确定角色和责任,列出测试可交付成果,定义风险。

    此阶段的交付成果是测试估算文件。

  3. 环境设置

    测试环境是一项独立的活动,可以和测试用例开发一起进行。

    环境设置需要一组必要的软件和硬件来创造测试环境。

    通过分析需求规范来准备软件和硬件列表。在设置测试环境后,执行测试用例以检查测试环境的准备情况。

  4. 测试用例

    测试团队启动案例开发和执行。测试团队记下详细的测试用例,并在需要时准备测试数据。

    此阶段的交付成果是测试执行结果以及具有缺陷详细说明的功能列表。

  5. 缺陷记录

    测试人员和开发人员根据测试覆盖范围,质量,时间消耗,成本和关键业务目标评估软件的完成标准。此阶段确定了软件的特性和缺点。

    深入分析测试用例和错误报告,以检测缺陷的类型及其严重性、

    缺陷记录分析主要用于根据严重程度和类型找出缺陷分布。

    此阶段的完成标志测试的结束,交付关闭报告和测试指标。

  6. 测试周期

    关闭测试周期结束报告包括与软件设计,开发,测试结果和缺陷报告相关的所有文档。如果存在具有相同规范的软件,此阶段将评估开发策略,测试过程,可能的缺陷,以便将来使用这些实践。

    此阶段交付测试结束报告。

软件质量保证(QA)和软件质量控制(QC)

软件质量保证(QA)

软件质量保证用于防止缺陷并确保为特定应用程序设计的技术,方法,和过程必须正确实施。

质量保证测试确保了高质量软件的开发,因为它主要关注软件开发过程中的高质量流程,良好的质量管理体系和定期的一致性审核。

软件质量保证是一种管理工具,包括计划和系统的活动文件,以防止与质量有关的问题。

软件质量保证的责任是每一个开发团队成员的责任。

软件质量控制(QC)

软件质量控制也称为质量控制,是一系列任务,也是一个被动的过程,主要目的在于在发布软件之前纠正所有类型的缺陷。

通过识别缺陷和纠正开发软件中的缺陷来确保软件质量。

通过纠正工具消除问题根源,从而使软件能够满足用户的要求和高质量,从而完成该过程。

质量控制的责任在于测试团队,通过验证和纠正工具测试软件的缺陷。

区别

项目 质量保证QA 质量控制QC
定义 质量保证是一组活动,可确保始终保持软件开发过程中使用的过程质量。 QC是一组用于检测已开发软件中的缺陷的活动。
关注重点 通过关注流程来防止开发软件中的缺陷。 通过关注测试过程来识别开发软件中缺陷。
如何做 建立高质量的管理系统,并定期审核开发软件的操作是否符合要求。 通过使用开发软件中的测试技术和工具来检测和消除质量问题。
为什么做 通过使用包括文档在内的系统活动来确保质量问题。 通过使用流程和技术来实现和维护高质量的软件,从而确保识别和消除缺陷。
面向 流程 产品
过程类型 积极主动 QC是一种反应过程,因为它涉及在产品开发之后和产品发布之前识别缺陷。
责任 开发团队每个成员 特定的检测团队
示例 验证软件流程 检验软件功能和流程
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2022 eightyninth
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信