最近QA部门的学习气氛很浓,在新员工答辩会上很多人都表达了要学习Python的意愿,但问到具体学习规划通常说上来。针对这种情况,本ID 觉得很有必要总结一个比较通用的Python入门指导,因为所处的行业原因,本指导可能比较适合移动互联网的测试同学,希望没有误人子弟。

第一阶段:入门阶段:(一般1周到2周)

主要任务:

1)配置Python环境

2)挑选合适自己的IDE工具

作为移动互联网测试人员当然推荐Eclipse+pydev组合,Eclipse+pydev的是一个非常主流的选择,好处就是碰到问题可以有很多 途径去问,降低学习曲线,而且Eclipse加装Android SDK后顺便也能搞定Android的自动化测试,一举两得。

这一点要说明一下,一般网上会有一部分不食人间烟火的编程狂热分子会强烈要求你用记事本或者vi神器来写Python就可以了。但你要上这种当你就 死翘翘了,因为这些大神们通常说的是单兵作战写个脚本的情景,典型的如黑客入侵。而你不是,你是要来做项目的,需要和团队合作,需要svn管理,需要 Android模拟器

另外不要再以上两个环节浪费太多时间,环境配置和用什么IDE不是我们的目的。

3)《简明Python教程》

作为入门级别的教材,网上就有这本书的全部内容(链接见参考部分),把这本书看完练习一下书中的例子,大概知道一下语法,几种数据类型怎么用,你就算入门了。

第二阶段:实践与调试阶段:(一般1个月到2个月)

入门之后要迅速巩固学习成功,这个阶段很主要,目的就是大量的Coding,放弃自己只是一个初学者的想法。如果不多加练习,第一阶段等于白忙了。可以给自己找找工作中的任务,以下几个模块都是比较基础的经常会用到的。你可以考虑把每个模块都做一个小工具或者小任务出来。

如果实在想不出写什么东西,可以自己写个脚本算一下淘宝彩票的中奖概率。

主要任务:

XML模块 (可以用来练习发送业务协议报文)

Excel模块 (可以用来分析日志并展示结果)

urllib2模块 (可以用来抓取web方面的测试结果)

re模块 (正则式的使用)

json模块 (可以用来练习发送业务协议报文)

mysql模块(或者其它数据库模块)

pyUnit (jUnit测试框架的python版本)

Python+Monkeyrunner (用来做Android上简单操作的自动化或者截图)

Python+Selenium (可以用来做web自动化测试)

BeautifulSoup模块

Python爬虫 (可以自己写只爬虫或者Scrapy)

记住这个阶段其实还只是把Python当成是脚本或者“胶水语言”再用而已,目的还只是提高Python语言本身的编程能力。

第三阶段:全面了解阶段 (反复过程)

OK,经过上述大量实践之后,你自然而然就是觉得每次碰到问题直接上网Google或者抄代码是解决不了问题,下次碰到了还得再Google一次。 你自己都觉得了虽然你会用某个具体的模块,但只是简单地用用它最基本的功能,比如你知道subprocess模块可以用来发送命令,但是你不了解很多细 节。因此你开始考虑对某个模块深入研究或者对Python这么语言进行一次洗心革面的了解。这样电脑前放一本随时可翻阅的参考的书是必不可少的。

主要任务:

1)《Python核心编程》或者《Python基础教程(第二版)》

这个环节任务就是看书,要点是计划和坚持。 列个读书计划,按时按量的过完每个章节。目的是达到对Python这门语言有个全面的了解

2) Python官方文档

GP或者App store上都有人把Python的官方文档做成电子书,可以安装在自己的手机上,没事按模块浏览一下。

3)Python面向对象的编程

4)收集自己的一些代码样本

比如简单的列表去重,最开始你估计寻思着几种写法,没事你就直接测试一下哪种写法效率比较高,然后就记录一下,下次还需要列表去重的时候你的脑海里立马就有思路了。效率提高之道

第四阶段:定向专攻方向:(长期过程)

Python作为一个脚本语言是最基本的要求,经过上述的阶段之后,可以说你已经会写Python脚本了,但会Python的谁不会写脚本呢?对 不,无非就是写的好与不好,本着实现功能的原则,本ID亦不会去追求纯粹的代码的高效。因此你还得有一个或者几个比较善长的,下面是几个方向可以选择一个 专攻。

1)桌面软件(wxpython或者QtPython)

没错的,用Python开发桌面运用,没事把之前用命令行执行的东西都可视化一遍。桌面软件的好处就是你写的工具别人拿来就直接能用了,不需要对方还得配置Python环境,写好的软件也可以自己发布到网上去,比如有一天突然你写了一个专门抢“小米手机”的软件。

如果选择wxPython的话还可以选择用BOA作为IDE,这样就可以像Delphi一样用鼠标拉拉组件来设计界面了。同样在选择用何种桌面UI框架来设计时也不要太过纠缠。

2)web框架 (webpy,flash,tornado,Django)

Web网站是一种更直接更方便的展示形式,这块的领域就比之前的更加广阔了,可以展示上述过程中Python脚本执行后的结果。

当然你因此还得顺带了解前端(HTML5,JQuery,nods.js等),数据库(noSQL,mySQL,MongoDB),服务器之类的东 西。选择这个方向的人天天梦想着自己有一天也写出了一个类似豆瓣那样的网站(Quixote+webpy) ,恩,这是一条不归路。

3)移动测试(Appium+Python)

Appium是一个比较新鲜的东西,支持Android和iOS平台的自动化测试。如果你有意接触这一块的话,推荐你从Appium+iOS开始学 起,因为Robotium已经是事实上的Android自动化主流选择,而iOS上的自动化方面的工具或者说框架实事上还处于空白,Appium有可能会 成为一个新的主流方向。

什么!你还想学习Linux环境?OK,把上述写完的脚本全部部署到Linux服务器上去。

参考:

  1. 《简明Python教程》中文版:http://woodpecker.org.cn/abyteofpython_cn/chinese/

  2. Python2.7官方文档:https://docs.python.org/2/library/index.html

  3. Appium官方:http://appium.io/zh-cn/index.html

  4. BOA官方: http://boa-constructor.sourceforge.net/

移动测试人员学习Python的顺序相关推荐

  1. python菜鸟教程100实例-运维人员学习python菜鸟教程

    这篇文章主要为大家详细介绍了运维人员学习python菜鸟教程,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 从不会写代 ...

  2. 如何留住优秀的测试人员

    最近又是IT行业跳槽的高峰期,所以关于如何留住技术人才,也都成为大家时常热议的话题.本人作为一名测试从业人员,对于此问题也颇有一番自己的看法,所以这里只是针对测试行业的探讨. 目前在国内测试领域存在一 ...

  3. 为什么每个软件工程师都应该学习Python?

    大家好,如果您定期关注我的博客 ,或者在HackerNoon上阅读我的文章,那么您可能想知道为什么我要写一篇文章告诉人们学习Python ? 几年前,我不是要您比Java更喜欢Java吗? 从那以后, ...

  4. python软件工程师_为什么每个软件工程师都应该学习Python?

    python软件工程师 大家好,如果您经常关注我的博客 ,或者在HackerNoon上阅读我的文章,那么您可能想知道为什么我要写一篇文章告诉人们学习Python ? 几年前,我不是要您更喜欢Java吗 ...

  5. 阿里测试人员:8年经验分享自学软件测试学习路线

    越来越多的人加入了测试大军中,很多人也想通过自学来学习软件测试技术加入这个行业,但是现在软件测试的书籍越来越多,也良莠不齐,而且软件测试涉及的技术也越来越多.本文主要说明的是从事软件测试行业需要必备的 ...

  6. 测试工程师python常见面试题_测试人员python面试题

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但 ...

  7. python做测试需要哪些技能_测试人员需要具备哪些基本技能

    测试人员需要具备哪些基本技能或者素质.这个问题在几年前常见于软件测试工程师笔试题上.对这个问题,我觉得应该有新的解读.现在我们日常工作中需要应对的是,测试和开发的交叉领域,测试和运维的交叉领域.而不再 ...

  8. 软件测试人员该学习 Python 的七个理由

    对于一个软件测试工程师来说,选哪一门语言来入手编程一直是件非常纠结的事情,当然立志做一辈子功能测试的人除外. 值得庆幸的是,专门介绍软件,工具及网站服务的技术Blog上CarlCheo绘制了一张图表, ...

  9. 做python自动化得时候怎么添加断言_在编写Web自动化测试用例的时候,如何写断言使新手不解,严格意义上来讲,没有断言的自动化脚本不能叫测试用例。就像功能测试一样,当测试人员做了一些操作...

    在编写Web自动化测试用例的时候,如何写断言使新手不解,严格意义上来讲,没有断言的自动化脚本不能叫测试用例.就像功能测试一样,当测试人员做了一些操作之后必然会判断实际结果是否等于预期结果,只不过,这个 ...

最新文章

  1. Debian8 远程登录Permission Denied,please try again
  2. 在SQL Server中如何获得刚插入一条新记录的自动ID号
  3. SQL Server 2016 JSON原生支持实例说明
  4. 早教机器人刷固件_机器人线刷包_机器人刷机包_机器人固件包_机器人救砖包 - 线刷宝ROM中心...
  5. php html class,html中规定元素的类名的属性class
  6. 周三直播丨Oracle 12cR2 ADG LGWR Library Cache案例分享
  7. launchpad不用图标_Launchpad Manager,一款非常方便的启动台图标管理工具
  8. 总结开发Silverlight项目准则 [转]
  9. leetcode python3 简单题101. Symmetric Tree
  10. 数据结构:八皇后、N皇后
  11. bootstrap多模态框
  12. Win10怎么录制内部声音 内录软件哪个好
  13. Android 性能优化 (十一) 电量优化全解析 秒变大神
  14. JAVA自学之路马士兵教程观看顺序
  15. 目标高盛,卡方科技用智能金融科技撬动国内量化投资
  16. 1534 棋子游戏(博弈)
  17. 微信小程序获取access_token报错errcode: 40125,errmsg: invalid appsecret
  18. 小米电视看电脑共享文件服务器,小米电视怎么共享电脑看本地视频【图文】
  19. webrtc视频码率计算
  20. 国家计算机病毒中心发现篡改IE的恶意木马

热门文章

  1. 基于BIM技术的施工管理平台研究
  2. 16系列显卡支持的计算机系统,GTX16系列显卡:GTX10系列显卡,正式再见
  3. 2:OBS 模块功能描述
  4. c语言和ege图形库编写的泡泡龙
  5. 数据库数据 | TCGA数据库33种癌症的 miRNA Isoform Expression数据
  6. signalR制作微信墙 开源
  7. 织梦安装百度编辑器UEditor
  8. Conflux Meetup No.1(北京站) | 下一代公链和DApps生态前景
  9. 地质学计算机应用,1-计算机在地质学中的应用现状和发展趋势.ppt
  10. 中国城市市区面积排行