手动测试和自动测试的区别
在这篇文章中,我们将了解手动测试和自动测试之间的区别-
自动化测试
它使用自动化工具来执行测试用例。
与手动方法相比,它速度很快。
它不允许进行随机测试。
初期投资高。
从长远来看,投资回报更好。
这是可靠的。
它由工具和脚本执行。
没有测试疲劳。
即使是微不足道的更改,也必须修改自动化测试脚本。
它是昂贵的。
所有利益相关者都可以登录自动化系统并检查执行结果。
它不涉及人类;因此它不能保证用户友好或提供积极的客户体验。
负载测试、压力测试、尖峰测试等性能测试必须通过自动化工具进行测试。
它可以在不同的操作平台上并行完成。
如果并行完成,它会减少测试执行时间。
多个测试脚本可以在一个批次中组合在一起。
自动化测试需要编程知识。
它需要一个不太复杂的测试设置。
在执行同一组测试用例时很有用。
它在使用构建验证测试(BVT)时很有用。
错过预先决定的测试的风险为零。
它使用数据驱动器、关键字、混合等框架来提高自动化过程的速度。
这些测试的行为就像一个文档,并为自动化单元测试用例提供培训价值。
新开发人员可以查看这些单元测试用例并快速理解代码库。
这样做是为了强制执行测试驱动开发(TDD)。
它是DevOpsCycle的重要组成部分。
它最适合回归测试、性能测试、负载测试或高度可重复的功能测试用例。
手动测试
测试用例由人和软件执行。
这很耗时。
它使用人力资源。
探索性测试可以使用手动测试来完成。
与自动化测试相比,初始投资较少。
与自动化测试相比,投资回报较低。
它不准确,因为它可能会导致人为错误。
诸如id、class之类的小更改不会妨碍手动测试器的执行。
人力资源需要投资。
它不符合成本效益。
手动测试记录在Excel或Word文档中。
测试结果并不容易获得。
它允许人类观察;因此它可能是用户友好的。
这是不可行的。
它们可以并行进行,但需要更多的人力资源,这将是昂贵的。
不能分批。
无需具备编程知识。
它需要一个简单的测试执行设置。
它可能很无聊且容易出错。
当测试用例需要运行一次或两次时,它很有用。
很难执行构建验证测试(BVT)。
这也很耗时。
错过预先确定的截止日期的风险更高。
它不使用任何框架。
他们可能会使用指南、检查表、严格的流程来起草特定的测试用例。
它们不提供培训价值。
他们不强制执行测试驱动开发。
它可以与探索性、可用性和临时测试一起使用。
它可以用于AUT频繁变化的地方。