selenium2 python 自动化测试实战(第二版)
《selenium2 python 自动化测试实战(第二版)》 虫师出品,必是精品博客园-虫师前言2013年即将结束,不知读者在这一年中都收获了那些。在这一年的最后一天班,我怀着激动的心情来写这本电子书的前言,在这本电子书的整理过程中,虽然舍弃了很多享受生活的时间,但从中我也收获了很多。自从开始从事软件测试工作开始,我就深深的喜欢上了这个职业。对我来说软件测试不单单是一份为了赚钱的⊥作,它同样也是我生活的部分,我从中找到了自我的价值。从开始在博客园写博客时,自我的价值廾始被放大,我只多了一点分亨精神。从开始从事软件工作时就知道 selenium这个自动化工具,网上找来资料学习,学会了用 selenium idi录制郾本,学会了简单搭建java+ selenium rc的环境,写一个简单的自动化脚本。后来,换了城市换了工作,一直于忙于工作和其它技术的学习,中间间隔了一年多没有再接触 selenium。直到2013年年初换了新工作后工作稍微轻松,业余时间开始学习 py thon语言,然后就喜欢上了这门语言,由于所测试的是web产品,所以,就考虑通过 py thon+ selenium将产品自动化起来。关于 python+ selenium的资料除了官方的份AP并不多,我们更容易找到的是java+ selenium的资料。对我来说学习的过程也比较缓慢,后来有幸认识了 MarkRabbit,他在 python+ selenium方面有着比较丰富的实践经验。 webdriver apl对种元素的定位和操作有着不少知识点,我每学会使用一个知识点整理一篇博客。后来,积累了十几篇博客出来。为了便于阅读我就整理成了一份PDF上传到了CSDN上面在 Markrabbit的一路指点下,我又开始学习 phon unittest单元测试框架,通过 python脚本批量执行测试用例等,然后整理出米第二版的内容。在此过程中得到了不少同学的反馈,自己的自动化测试水平在不断的学习实践中得到了长足的进步。后来,开始对肘本做参数化,引入 HTMLTest Runner测试报告以及对测试结构调整。蹙理出了第三版Markrabbit趁周末休息的时间向我展小他们目前的 py thon+ seleniⅧm测试框架,我非常兴奋,同时也觉得这个技术非常有用,于是决定整理一本完整书出来,市面上关于 selenium的书大多翻译官方文栏,对 seleniun的讲解也泛泛之谈,并没有真正通过编程的方式来帮助读者真正的去实施自动化。联系了位人民邮电出版社的编辑,获得了一份编书的规范,当时并没有约稿。这对我米说是一次新尝试,我想自凵真能写出来再说。有了这个想法之后,我每天像打了鸡血样活在兴奋当中,坐车和睡觉前也在思考书中的技术点。后来,乙醇告诉我编辑成书比较麻烦,不断的修改也是非常头痛的事情,而我没有精力反复做这些,由于自身水平的局限,我的更多精丿是在技术点学习上。后来,改变了想法以电子书的形式展现给人家,这样我的编写过程随意了许多,我要做就是简单易懂告诉这是怎么回事,如何去实现。全书的结构:全书共分11章,第一章是基础,了 selenium家谱,各种组件之间的关系以及一些必备知识。第二章告诉如何开始用 py thon IDlE写程序以及自动化测试环境的搭建。第三章是 webdriver aPl,我化了相当多时间对原先的文档,冗余的地方进行压缩,并且增加了许多新的知识点。第四、五两章介绍自动化测试http://fnng.cnblogs.com博客园-虫师模型,以及如何设计自动化测试用例。第六、七、八章的知识点关联性比较大,帮助读者搭建一个实例的测试结构,读者可以在此基础上扩展和优化。第九章介绍 selenium grid如何多台平多浏览器的执行测试用例。第十章带领读者了解形为驱动开发框 lettuce,第十一章通过git来管理自己的测试用例。本书的特点:本书内容由浅入深,章节的安排也符合全读者的学习曲线,所有涉及到 python语言的地方都有详细的介绍。这是一本自动化测试书,这也是一 py thon编程书。希望通过本书的学习,你不仅仅只是掌握个自动化测试技术,使你的编程水平也有长足的进步,从此摆脱纯手工测试,向“测试开发”人员转型,向晑薪挑战。本书中的不足当然,本书也存在许多不足, python的多线程技术, selenium grid并发测试技术对作者来说也是难点,作者水平有限,无法讲解的很透彻。git工具的使用,分支的使用,以及木地搭建git环境,由于时间仓促未能编写(只能后续版本完善),本书的所提供的代码随着时间环境了变化,有些在运行过程中会岀现各种各样的错误,请读者遇到错误多调试多思考,欢迎向作者反馈书中的错误。2014.1.24虫师http://fnng.cnblogs.com博客园-虫师目录刊目录第·章自动化测试基础.*··*··第一节软件测试分类35993第二节什么样的项目适合自动化测试第三节自动化测试及工具简述14第四节 selenium工具介绍.第五节前端技术介绍.…17第六节前端工具介绍第七节自动化测试语言的选择.22第章 python wehdriver环境搭建.…..24第一节坏境搭建…24第二节使用IDIE来编写 python第三节第一个自动化脚木第四节安装浏览器驱动,,,4第三章 python webdriver APl第一节、浏览器的操作.3.1.1、浏览器最大化3.1.2、设置浏览器宽、高.323.1.3、控制浏览器前进、后退.…….…第二节简单对象的定位…343.2.lid和name定位32.2 tag name和 class name定位…1363.2.3 link text与 partial link text定位3.24 XPath定位∴.373.2.5CSS定位第三节操作测试对象.3.31、登录实例.143.3.2 WebElement接∏常用方法…·第四节鼠标事件.…第五节键盘事件.第六节打印信息.52第七节设置等待时间第八节定位一组对象…57第九节层级定位第|节定位rame中的对象http://fnng.cnblogs.com博客园-虫师第|一节对话框处..…67第十二节浏览器多窗口处理.68第十二节 alert/confirm/prompt处理,第十三节下拉框处理.第十四节分页处理…75第十五节上传文件77第十六节下载文件第十七调用 Java Script第十八节、控制浏览器滚动条第十九节 cookie处理..853.19.1打印 cookie信息·++3.19.2、对 cookie操作第二十节获取对象的属性第二|一节验码问题……第二十二节 weddrivcr原理90第四章自动化测试模型91第一节、自动化测试模型介绍…4.1.1线性测试4.1.2模块化与类库……934.1.3数据驱动44.1.4关键字驱动95第二节、登录模块化第三节、数据驱动(参数化)103第五章自动化测试用例设计第一节、手工测试用例与自动化测试用例.第二节、测试类型13第三节、 python异常断言115第四节、 weddriver错误截图119第五节、自动化测试用例设计实例120551登陆用例实例1215.52添加文件用例实例.123553删除文件用例实例……125554重命名文件用例实例第六章引入 unittest单元测试框架129第一节、 selenium ide介绍1296.1.1 selenium ide安装1296.1.2 sclcnium IDe界面介绍1306.13 selenium ide录制脚木………1326.14 selenium IDe编辑脚本133第二节、引入 unittest框架..136第三节、 unittest单元测试框架解析.140第四节、批量执行测试用例.146第七章引入测试报告与结构优化第·节、生成 HTMLTestrunner测试报告150第二节、测试套件.155ht博客园-虫师7.2.1、测试套件实例1557.2.2、整合 HTMLTest runner测试报告7.2.3、易读的测试报告………1607.2.3、报告文件名取当前时间…163第三节、结构改进.1647.3.1、 all tests.py文件移出来.1647.3.2、init.py文件解析.…1667.3.3、把公共模块文件移进去…..167第四节、用例的读取l687.3.1、改进用例的读取…7.3.2、 discover解决用例的读取.l71第八章自动化测试高级应用.175第一节、自动发邮件功能1758.1.1、文件形式的邮件1768.1.2、HTM.形式的邮件1778.1.3、获取测试报告1788.1.4、整合自动发邮件功能180第二节、 python多进程/线程基础.1838.2.1、单线程.1848.2.2、 thread模块..185ding模块…8.2.4、 multiprocessing模块.1928.2.5、Pipe和 queue.…194第三节、多进程执行测试用例196第四节、定时任务.2008.4.1、程序控制时间执行..208.4.2、 windows添加任务计划.2028.4.3、1inux实现定时任务.…207第五节、 WebDriver方法二次封装…215第九章 selenium grid2分布式执行测试用例220第一节、 selenium与2工作原埋220第二节、 selenium server环境配胃.…224第三节、 selenium grid工作原理第四节、 selenium grid应用..2299.4.1、多浏览器执行用例.……299.4.2、多节点执行用例9.4.3、分布式并行运行脚本237第|章行为驱动廾发BDD框架 lettuce入门241第一节、安装与例子242第二节、 lettuce解析244第三节、添加测试场景.248第四节、 lettuce的目录结构与执行过程.52第五节、 lettuce webdriver自动化测试..254第十章 git/getafe管里自动化测试项目257第一节、Gⅱt搭建.257http://fnng.cnblogs.com博客园-虫师第二节、提交代码…·····‘·········.++4···+‘··…261第三节、更新代码268附录274UliPad- python开发利器环境搭建……275Sublime-强大好用的代码编辑器……sublime使用技巧277参考282http://fnng.cnblogs.com博客园-虫师第一章自动化测试基础第一节软件测试分类关于软件测试领域名词颇多,发现有许多测试新于混淆概念,从不同的角度可以将软件测试有不同的分类的方法;所以,这里汇总常见软件测试的相关名词,对软件测试领域有个概括的了解。根据项目流程阶段划分软件测试验收测试需求分析系统测试设计集成测试单元测试图1.1上图是一个典型“V”模型软件开发流程,那么各项软件测试工作是在项目开发流程中循序渐进进行的。下面将介绍各个阶段测试的含义。单元测试:单元测试(或模块测试)是对程序中的单个子程序或具有独立功能的代码段进行测试的过程http://fnng.cnblogs.com博客园-虫师集成测试:集成测试是单元测试的基础上,将通过单元模块组装成系统或子系统,再进行测试,重点是检查模块之间的接口是否正确。系统测试:系统测试是针对整个产品系统进行的测试,验证系统是否满足了需求规格的定义,以及软件系统的正确性和性能等是否满足其规约所指定的要求验收测试:验收测试是部署软件之前的最后一个测试操作。验收测试的日的是确保软件准备就绪,向软件购买都展示该软件系统满足其用户的需求。白盒测试、黑盒测试、灰盒测试白盒测试与黑盒测试,主要是根据在软件测试工作中对软件代码的可见程度进行的划分;这也是软件测试领域中最基本的概念图1.2黑盒测试:黑盒测试,指的是把被测的软件看作是一个黑盒子,我们不去关心盒子里面的结构是什么样子的,只关心软件的输入数据和输出结果。它只枍査程序呈现给用户的功能是香按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑內部逻辑结构,上要针对软件界面和软件功能进行测试。白盒测试:白盒测试,指的是把盒子打开,去研究里面的溟代码和程序执行结果http://fnng.cnblogs.com
下载地址
用户评论
非常好的资料,非常感谢
特别好的资料,谢谢
非常好的学习资料。
好资料,值得学习