软件测试基础回顾(六)-自动化测试 手动测试:有什么区别?

什么是手动测试?

手动测试是测试由QA分析师手动执行测试的软件。执行它是为了发现正在开发的软件中的错误。

在手动测试中,测试人员会检查给定应用程序或软件的所有基本功能。在此过程中,软件测试人员无需任何自动化软件测试工具的帮助即可执行测试用例并生成测试报告。

它是所有测试类型的经典方法,有助于发现软件系统中的错误。它通常由经验丰富的测试人员进行,以完成软件测试过程。

什么是自动化测试?

在自动软件测试中,测试人员编写代码/测试脚本以自动执行测试。测试人员使用适当的自动化工具来开发测试脚本并验证软件。目标是在更短的时间内完成测试执行。

自动化测试完全依赖于预先编写的测试,该测试自动运行以将实际结果与预期结果进行比较。这有助于测试人员确定应用程序是否按预期执行。

自动化测试允许您执行重复性任务和回归测试,无需手动测试器的干预。即使所有进程都是自动执行的,自动化也需要一些手动工作来创建初始测试脚本。

 

自动化测试与 手动测试

参数自动化测试手动测试
定义 自动化测试使用自动化工具来执行测试用例。 在手动测试中,测试用例由人工测试人员和软件执行。
处理时间 自动化测试比手动方法快得多。 手动测试非常耗时并占用人力资源。
探索性测试 自动化不允许随机测试 在手动测试中可以进行探索性测试
初始投资 自动化测试的初始投资更高。虽然从长远来看,投资回报率更好。 手动测试的初始投资相对较低。从长远来看,与自动化测试相比,ROI较低。
可靠性 自动化测试是一种可靠的方法,因为它是由工具和脚本执行的。没有测试疲劳。 由于可能存在人为错误,因此手动测试不准确。
UI更改 即使是在AUT的UI中进行微不足道的更改,也需要修改自动测试脚本以按预期工作 诸如按钮的id,类等的改变之类的微小改变不会妨碍手动测试器的执行。
投资 测试工具和自动化工程师都需要投资 人力资源需要投资。
经济有效 低容量回归不具成本效益 高容量回归不具成本效益。
测试报告可见性 通过自动化测试,所有利益相关者都可以登录自动化系统并检查测试执行结果 手动测试通常记录在Excel或Word中,测试结果不易/随时可用。
人类观察 自动化测试不涉及人为考虑。因此,它永远无法保证用户友好性和积极的客户体验。 手动测试方法允许人类观察,这对于提供用户友好的系统可能是有用的。
性能测试 负载测试,压力测试,尖峰测试等性能测试必须由强制自动化工具进行测试。 性能测试手动不可行
并行执行 该测试可以在不同的操作平台上并行执行,减少测试执行时间。 手动测试可以并行执行,但需要增加昂贵的人力资源
批量测试 您可以批量处理多个测试脚本以进行夜间执行。 手动测试不能批量处理。
编程知识 编程知识是自动化测试中必不可少的。 无需在手动测试中进行编程。
建立 自动化测试需要较少的复杂测试执行设置。 手动测试需要更简单的测试执行设置
订婚 由工具完成。它准确,永远不会觉得无聊! 重复手动测试执行可能会变得无聊且容易出错。
理想的方法 当频繁执行同一组测试用例时,自动化测试很有用 当测试用例只需运行一次或两次时,手动测试证明是有用的。
构建验证测试 自动化测试对于构建验证测试(BVT)非常有用。 在手动测试中执行构建验证测试(BVT)非常困难且耗时。
截止日期 自动化测试没有错过预先确定的测试的风险。 手动测试更有可能错过预先确定的测试截止日期。
骨架 自动化测试使用数据驱动,关键字,混合等框架来加速自动化过程。 手动测试不使用框架,但可以使用指南,检查表,严格的流程来起草某些测试用例。
文档 自动化测试作为一个文档提供培训价值,特别是对于自动化单元测试用例。新开发人员可以查看单元测试用例并快速了解代码库。 手动测试用例不提供培训值
测试设计 自动化单元测试强制/驱动测试驱动开发设计。 手动单元测试不会将设计推入编码过程
DEVOPS 自动化测试有助于构建验证测试,是DevOps Cycle的一个组成部分 手动测试违背了DevOps的自动构建原则
何时使用? 自动化测试适用于回归测试,性能测试,负载测试或高度可重复的功能测试用例。 手动测试适用于探索性,可用性和临时测试。它也应该用于AUT频繁更改的地方。

手动测试优点和缺点

手动测试的优点:

  • 获得快速准确的视觉反馈
  • 由于您不需要将预算用于自动化工具和流程,因此成本较低
  • 人的判断和直觉总是有益于手册元素
  • 在测试一个小的变化时,自动化测试需要编码,这可能非常耗时。虽然你可以动态测试。

手动测试的缺点:

  • 不太可靠的测试方法,因为它是人类进行的。因此,它总是容易出错和错误。
  • 手动测试过程无法记录,因此无法重复使用手动测试。
  • 在该测试方法中,某些任务难以手动执行,这可能需要额外的软件测试阶段时间。

自动化测试的优点和缺点

自动化测试的优点:

  • 与人工测试人员相比,自动化测试可帮助您找到更多错误
  • 由于测试过程的大部分内容都是自动化的,因此您可以拥有快速高效的流程
  • 可以记录自动化过程。这允许您重用并执行相同类型的测试操作
  • 使用软件工具进行自动化测试,因此在手动测试中,与人类不同,它不会产生疲劳和疲劳
  • 它可以轻松提高生产率,因为它可以提供快速准确的测试结果
  • 自动化测试支持各种应用程序
  • 由于自动化测试工具永远不会忘记检查最小的单元,因此可以增加测试覆盖率

自动化测试的缺点:

  • 如果没有人为因素,很难深入了解UI的视觉方面,如颜色,字体,大小,对比度或按钮大小。
  • 运行自动化测试的工具可能很昂贵,这可能会增加测试项目的成本。
  • 自动化测试工具尚未完全证明。每个自动化工具都有其局限性,从而缩小了自动化范围。
  • 调试测试脚本是自动化测试中的另一个主要问题。测试维护成本很高。

结论

  • 手动测试是测试由QA分析师手动执行测试的软件。
  • 在自动软件测试中,测试人员编写代码/测试脚本以自动执行测试。
  • 手动测试可帮助您获得快速准确的视觉反馈。
  • 与人工测试人员相比,自动化测试可帮助您找到更多错误。
  • 手动测试是一种不太可靠的测试方法,因为它是对人类进行的。因此,它总是容易出错和错误。
  • 运行自动化测试的工具可能很昂贵,这可能会增加测试项目的成本。
  • 手动测试非常耗时并占用人力资源。
  • 自动化测试比手动方法快得多。

 

posted @ 2018-07-24 15:28  (时光)光阴飞逝  阅读(683)  评论(0)    收藏  举报