如何开始学习web ui自动化测试?如何选择一门脚本语言?选择什么自动化测试工具?
本人已经做测试快5年,很惭愧,感觉积累不够,很多测试都不会,三年多功能测试,最近两年才开始接触和学习自动化测试。打算写一个系列文章,关于如何从零开始到会设计和组装一个简单的web ui自动化测试框架。把文章放到这里的目的,方便以后自己记不住,回过来看看,还有就是给一些想学习web自动化测试的朋友们一些学习参考和交流,互相提高测试技能。
一. 为什么学习自动化测试
首先,你是一个测试工程师,这个问题就应该很好解答,都是被逼的,作为一个测试工程师,如果不会一点代码和脚本,很容易被开发人员鄙视,很容易被刚毕业学生的抢走工作,最后就是被淘汰,苦苦找不到理想的工作。
随便看看一个招聘网站关于测试工程师的要求,功能测试是基本要求,要会接口测试,要会自动化测试,要会性能测试,要会安全测试,要懂得持续集成,要看得懂代码,要编程能力,能通过设计开发,提高测试流程和规范,减少时间成本。上面任何一个测试领域,现在都有自动化测试工具和方法出现,只能手工测试的人来说,感觉很无奈,感觉什么都不会了。
为了延长测试职业生涯,为了更好的工作机会,开始决定学习编程,学习一点自动化测试技术。开始奋斗吧。
二. 自动化测试从什么领域开始
GUI测试 VS API测试
什么事情都是入门难,如何开始这个问题困扰了很多人,网上很容易找到如何学习和入门XX子类的提问。针对这个问题,我的答案是,选择一个方向,动手去练习。动手是最好的开始,看了很多,但是如果不去动手,去验证,去实践,结果还是什么都学不会。由于我是从web ui自动化开始学习,所以我也推荐从这个领域学习,理由主要有:基于B/S架构和移动端的软件开发实在太多,web ui自动化测试很容易入门和上手。学会了web ui自动化测试,以后手机端app 自动化测试也很容易上手。
三.为何选择Python+Selenium
选择了学习web ui 自动化测试这个方向,接下来就选择一个合适的工具或者框架,还有合适的脚本语言。选择Selenium的原因是,它是开源的,开源意味不要收费,而且使用的人越来越多,就这么简单,这里不罗列Selenium的优点。工具选好了,接下来选择一个合适的脚本开发语言。
很多人可能会很纠结,到底是选java还是python呢?我的意见是,如果你有java基础,可以选择java,如果你什么编程语言都不会,想从零开始,强烈建议选择python。会Java的人,也可以选择python,既可以学习Selenium也可以多学会一门脚本语言,感觉挺好的。
四.如何学习Python基本语法
确定了选择Python+Selenium方向后,第一件事情就是收集资料。需要收集Selenium的介绍文档,Python语言基础入门学习文档。只有学会了Python基本语法,你才可以开始学习编写脚本。
Python 入门资料:
1. 笨方法学Python.pdf(强烈推荐)
有中文版和英文版,建议研读和动手操作,至少学习到第44个练习(目录参考英文版),大概是面向对象和继承介绍。
2. 一个小时Python入门视频教程
https://python.freelycode.com/train/start0
入门资料不要太多,这两个足够你很好学习和入门,最好两个交替进行,pdf看累了,看看视频,视频讲的太简单了,回过去看pdf,查看和学习相关概念。
Selenium介绍文档:
1. 官网介绍(需要): http://www.seleniumhq.org/
2. Wiki介绍: https://en.wikipedia.org/wiki/Selenium_(software)
3. 百度百科搜索:Selenium