学弟:手工测试和自动化测试的区别是啥?

Posted 在人间换酒钱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学弟:手工测试和自动化测试的区别是啥?相关的知识,希望对你有一定的参考价值。

一、 手工测试

1、 什么是手工测试?

手工测试是由测试工程师手动测试软件各项功能以发现缺陷的过程。测试人员应该从最终用户的角度出发,并确保所有功能都按照项目的需求文档中的说明工作。在此过程中,测试人员执行测试用例 并手动生成报告,而无需使用任何自动化工具。

2、 什么阶段适合使用手工测试?
探索性测试:探索性的测试一般由测试领域的专家来进行。他们仅通过检查应用程序的功能来执行测试,而无需了解需求。

可用性测试:验证应用程序是否对用户友好,并且能否保障最终用户的使用体验。此测试的主要重点是检查最终用户是否可以轻松理解和操作应用程序。

临时测试:临时测试与正式测试完全相反。它是一种非正式的测试类型。在 Adhoc 测试中,测试人员在不遵循任何文档和测试设计技术的情况下随机测试应用程序。测试人员在没有任何测试用例或任何业务需求文档的情况下随机测试应用程序。

3、什么情况下选择手工测试而非自动化?
在以下场景中,我们更喜欢使用手工测试而不是自动化:

当项目处于初始开发阶段时。
在测试程序界面时,尤其是程序的视觉方面。
当需要执行探索性或临时测试时。
如果项目是短期的,与手工测试相比,编写脚本会很耗时,相对来讲手工更方便
如果测试用例不能自动化执行时会选择手工测试。比如,较为复杂的登录验证码测试。

4、手工测试的优缺点
①手动测试的优点:

可以对各种应用程序进行手动测试
更适合生命周期较短的产品
适用于需求频繁变化的项目和GUI不断变化的产品
与自动化测试相比,手工测试的初始投资更便宜
手工测试可以执行临时测试
测试人员无需了解自动化工具
②手工测试的缺点:

手工测试在进行回归测试时,非常耗时。
与自动化测试相比,手动测试的可靠性较低,因为它是由人工进行的。所以总会容出现错误和失误。
从长远来看,相比自动化测试,手工测试代价过于昂贵

二、 自动化测试

1、什么是自动化测试?

自动化测试是使用自动化工具测试软件以发现缺陷的过程。在此过程中,执行测试脚本并生成结果由自动化工具自动执行。一些最流行的自动化测试工具是Selenium WebDriver、appium、postman、Loadrunner等

2、一些常见的自动化测试工具

HP QTP(Quick Test Professional)/UFT(Unified Functional Testing):惠普关键字驱动测试工具
Selenium:web自动化测试工具
LoadRunner:性能测试工具
SilkTest:功能测试工具
TestComplete:自动化功能测试平台
WinRunner:企业级功能测试工具
WATIR:Web自动化测试工具

3、 什么阶段使用自动化测试?

回归测试:在修改后对已经测试过的程序进行重复测试,以发现由于正在测试的软件或其他相关或不相关的软件组件中的更改而引入或发现的任何缺陷。因此,回归测试最适合自动化测试,因为代码更改频繁,及时执行测试的复杂程度超出了手工的能力范围。

负载测试:验证系统/应用程序是否可以处理预期数量的事务,并验证系统/应用程序在正常和峰值负载条件下的行为。在负载测试方面,自动化测试也是高效完成测试的最佳方式。它最适合自动化测试。

性能测试:这种类型的测试确定或验证被测系统或应用程序的速度、可扩展性和/或稳定性特征。性能与实现满足项目或产品性能目标的响应时间、吞吐量和资源利用水平有关。它最适合自动化测试。

4、哪些测试不能自动化测试?

探索性测试
用户界面测试
临时测试

5、什么时候选择自动化测试优势更大?

处理重复和耗时的任务
进行并发测试
进行非功能性测试,如负载、性能、压力测试为避免人为错误
6、自动化测试的优缺点
①自动化测试的优点:

自动化测试执行速度更快
从长远来看,它比手动测试更利于企业长久发展
自动化测试得到结果更可靠
自动化测试更强大、更通用
它主要用于回归测试
可重复使用,可以记录自动化过程
它不需要人工干预。测试脚本可以在无人值守的情况下运行
它有助于增加测试覆盖率
② 自动化测试的缺点:

仅适合长期迭代更新的产品
自动化测试在最初搭建时成本会比较高
大多数收费的自动化工具费用都比较高
它有一些限制,例如处理验证码,获取 UI 的视觉方面,例如字体、颜色、大小等不适合使用自动化测试
需求反复变化的项目,进行大量维护的项目都不适合自动化

最后:【可能给予你助力的视频教程】

这些资料,对于想从功能测试进阶到自动化测试的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助,需要的小伙伴点击下方插件进群免费领取:

以上是关于学弟:手工测试和自动化测试的区别是啥?的主要内容,如果未能解决你的问题,请参考以下文章

性能测试峰值

性能测试,负载测试,压力测试有啥区别

selenium第一天学习

web自动化测试是啥意思

1分钟带你秒懂自动化测试和Appium,Selenium,Jmeter,Dragon testing等一系列自动化测试工具

自动化测试用例与手工测试用例应用的区别