随着软件行业的不断发展,软件测试技术也在不断地更新,出现了众多的自动化功能测试工具,如HP的Quick Test Professional(最新版本名为UFT)及开源的Selenium。性能测试工具如LoadRunner、JMeter等。
所谓自动化测试,即利用测试工具,编程实现模拟用户业务使用流程的脚本,设定特定的测试场景,自动寻找缺陷。
自动化测试的引入,大大地提高了测试效率和准确性,而且封装性较好的测试脚本,还可应用于其他产品项目。业内通常将自动化功能测试称为自动化,而性能测试单独成体系,不含在自动化测试中。
1. 自动化测试优点
自动化测试的优点是快速、可重用,替代人的重复活动。回归测试阶段,可利用自动化测试工具进行,无须大量测试工程师
手动重复执行测试用例,极大地提高了工作效率。有时做压力测试,需要几万甚至几十万个用户同时访问某个站点,以保证网站服务器不会出现死机或崩溃现象。一般来说,模拟几万人同时访问某个系统,通过人工很难实现,但利用测试工具,如LoadRunner,可非常容易地做到。
2.自动化测试缺点
当然,自动化测试的缺点也很明显,它们只能检查一些比较主要的问题,如崩溃、死机,但却无法发现新的错误。另外,在自动化测试中编写测试脚本的工作量也很大,有时该工作量甚至超过了手动测试的时间。
在自动化测试活动中,测试工具的应用,可以提高测试质量、测试效率。但在选择和使用测试工具时,也应该看到在测试过程中,并不是所有的测试工具都适合引入,同时,即使有了测试工具,会使用测试工具,也不等于测试工具真正能在测试中发挥作用。
因此,应该根据实际情况选择测试工具,选择使用何种测试工具,千万不可为了使用工具而刻意地使用工具。在目前软件系统研发环境下,自动化测试完全替代手工测试是不可能的。
自动化测试不仅仅运用在系统测试层面,在单元测试、集成测试阶段同样可以使用自动化测试方法进行测试。
目前很多企业非常稀缺自动化测试人才,因而,会自动化测试已经成了软件测试工程师的必备技能。那么如何从功能测试转成自动化测试呢?
先简单的自我介绍一下
8年工作经验,曾就职于某大型国企,公司研究院成员,也就职过字节担任高级测试开发工程师,有丰富的高并发大型项目经验。 后端高并发、高性能、高可用性开发,自动化测试框架开发以及软件自动化部署,践行Devops理念,对docker k8s容器编排技术有深入研究。
我的自动化测试之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,所以,我和朋友花了一段时间整理编写了下面的《自动化测试工程师发展规划路线》,希望会给你带来帮助和方向
一、先学习一门编程语言,建议python
二、Python自动化测试框架应用
三、自动化测试篇 - Web UI 自动化
四、自动化测试篇 - 移动端UI 自动化
五、自动化测试篇 - 接口自动化测试
六、自动化测试篇 - 持续集成Git、jenkins、Docker
七、自动化测试篇 - 性能测试LoadRunner、jmeter、app性能
八、自动化测试篇 - WEB安全测试、渗透测试、漏洞扫描
九、自动化测试篇 - RobotFramework、AirTest
10、测试开发篇-自动化测试平台开发
11、互联网高薪测试拓展知识、Redis、MongoDB、Nginx集群实战
上面就是我为大家整理出来的一自动化测试工程师发展方向知识架构体系图。希望大家能照着这个体系在3-4个月完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
最后学习配套资源分享!
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。