关于《selenium2自动测试实战--基于Python语言》
关于本书的类型:
首先在我看来技术书分为两类,一类是“思想”,一类是“操作手册”。
对于思想类的书,一般作者有很多年经验积累,这类书需要细读与品位。高手读了会深有体会,豁然开朗。新手读了不止所云,甚至会说,都在扯犊子,看了半天也不知道如何下手。
对于操作手册的书,一般会提供大量的实例,告诉你详细的步骤。对于高手来说,这不就是翻译了一下官方文档嘛,好意思拿来骗钱。但对于新手来说,反而认为是好处,跟着上面的步骤操作就掌握了某种技术能力。
显然,本书属于后者,书中提供了大量代码实例,并没有太多思想层面的指点与探讨。当然,对于web UI层的自动化代码,随着时间推移书中的例子或不能运行成功。所以,对于已经在自动化方面有经验的同学也不要抱太大希望,能从本书中看到太多高深技术。但对于新手来说,也不要想得过于简单,如果你编程基础比较弱的话,读起来也会有点难度。
关于出书目的:
Selenium自动化测试技术已经出来很多年了,知道2013年的时候,市面的关于该技术的书(中文版)都只是在讲Selenium工具本身,这导致很多人(包括我)看完这些书后,并没有什么卵用。只会拿Selenium IDE录制一些简单的脚本。单真正把Selenium用好,编程语言和单元测试框架是很重要的知识。
从我准备整理这本电子文档的时候,就把这两块知识作为非常重要的技术介绍。另外,国内大多Selenium书籍都是基于Java语言的,其实,Ruby和Python更适合测试人员学习。
出一本基于Python语言的,也算是填补一下空白。
还会出版Java版的吗?
不会,虽然在今年八月份的时候我也整理出了Java版的电子书。
但现在市面上已经出版的基于Java的Selenium已经有了单元测试框架的讲解,所以,我感觉没有必要再将Java版的出版了。
关于出版的过程:
其实,本书能够出版中间也经历了曲折,早在2013年我就在整理关于Python+Selenium的文档,刚开始整理点内容免费共享,后来再加点内容卖5元,再后来加了些内容卖8元;再后来加了很多内容卖29元。再后来,就被共享到网上了,虽然,大多向我购买的同学还是很尊重我的劳动成果的。
在此期间一直更新与丰富里面的内容。收获了赞扬与朋友,网友的问题也促使我在这方面的经验越来越丰富。
直到2014年年底,有一网友(和别人合著过书的朋友)找到我,说想让我出书。其实,经过这么久的积累,也希望它能成书。于是,又整理了一版出来交给他。他的合同发来时,人傻了,原来是自费出书,购买书号和印刷费我出,赚得钱和他对半分,而且,我的书还要挂他的名字,表示与我合著。我就呵呵了。
后来,到2015年的8月,出版社编辑安娜找到我,问我出不出书,关于git的,....不知道她为什么会知道我精通git。那我说git不会,手上有一本Selenium的相关书让她看能不能出。于是,就开始进入流程。
我填写出书的主题---->我重新整理内容--->其间合同来往----> 编辑一审--->第一次排版出来---> 我又改了不少内容-->编辑二审 -->二次排版-->复审-->终审-->发稿-->申请定价-->印刷-->上市。
主要是由于我中间改稿,导致11月份出版的书,延迟到1月份。
关于书封背面的评价:
狄枫,MarkRabbit 、多可笑 ,我们都是一个技术群里的朋友。
狄枫嘛,比较习惯在群里面侃大山,引一群膜拜。是我们中间技术和资历比较老的。
MarkRabbit 群主,在我初学自动化时,给了很多帮助。
多可笑,技术不错,熟悉BDD行为驱动技术,起初我们经常一起讨论技术。
后来,想是不是应该找点牛B的人写书评。联系到了陈曦明(hyddd),如果你想学习Selenium一定能搜索到他的《Selenium私房菜系列》 ,他也很高兴的帮我写了书评。
关于前言
前言是让乙醇写的,早在2013年,我们也是因为selenium自动化技术在网上认识,后来,一起吃过一次饭,虽然平时很少交流,却有很高的默契。一起合作的自动化测试培训已经两年多了,配合一起很默契。他技术能力很强,而且也很广泛。在此,对他表示感谢。
关于定价
全书整理下来大概350页左右,由于印刷的成本比较高。所以,编辑建议定价69元,但我们都感觉有点贵了。我们大多时间在买书时并不看页数,更关注定价,于是,经过商量把最后两章拿掉,做成了电子版。别外一原因是最后两章与前面章节的内容关联不多。但做为测试人员有必要了解与学习。定价59元的书,在京东和天猫打折销售 44元。好吧!感觉这个价格你们可以接受。
最后两章下载地址:www.broadview.com.cn/27853
关于最后的项目
抱歉,现在(2016年11月)才把书最后的例子放到了GitHub上面:https://github.com/defnngj/mytestpro
虽然例子的内容与书中有所不同,但代码结构是一样的。当然,我有时间也会使例子更丰富一些。
关于本人
生活依旧,工作依旧,学习依旧,趁着对技术还热情,继续学习与总结。这本书总结和维护了这么久,能够出版。也算给了它个名份。
关于《selenium2自动测试实战--基于Python语言》的更多相关文章
- 关于<meta NAME="keywords" CONTENT="">
昨天终于以实习身份入职一家小创业公司,今天让我多看看别人的网页怎么写的,发现了一个以前都没关注过的东西. <meta name="keywords" content=&quo ...
- 转 :meta name的含义:<META http-equiv=Content-Type content="text/html; charset=gb2312">
meta是什么?meta其实是html语言head区的一个辅助性标签.在几乎所有的网页里,我们都可以看到类似下面这段html代码:<META http-equiv=Content-Type co ...
- HTML <meta> 标签 遇到<meta http-equiv="refresh" content="0; url=">详解
页面定期刷新,如果加url的,则会重新定向到指定的网页,content后面跟的是时间(单位秒),把这句话加到指定网页的<head></head>里一般也用在实时性很强的应用中, ...
- 转 【<meta name="description" content=">】作用讲解
今天在看别人写的网站代码,发现类似<meta name="Keywords" content="" >.<meta name="De ...
- <head>中<meta name="viewport" content="width=device-width,initical-scale=1"的作用>
<meta name="viewport" content="width=device-width,initical-scale=1"的作用> co ...
- 关于<meta http-equiv="X-UA-Compatible" content="IE=edge" />问题
我在做网页过程中都是在火狐浏览器下进行的,可是有一次我在IE浏览器下打开时却发现我设置的style.css中的大部分样式都失效率了,这个问题足足困扰了我两天,终于在百度的帮助下找到了答案,原来在网页的 ...
- 优先使用最新版本的IE 和 Chrome 内核 1 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
兼容模式 优先使用最新版本的IE 和 Chrome 内核 1 <meta http-equiv="X-UA-Compatible" content="IE=edge ...
- 论meta name= viewport content= width=device-width initial-scale=1 minimum-scale=1 maximum-scale=1的作用
一.先明白几个概念 phys.width: device-width: 一般我们所指的宽度width即为phys.width,而device-width又称为css-width. 其中我们可以获取ph ...
- meta name="viewport" content="width=device-width,initial-scale=1.0" 解释
<meta name="viewport" content="width=device-width,initial-scale=1.0"> c ...
- <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 的说明
X-UA-Compatible是针对ie8新加的一个设置,对于ie8之外的浏览器是不识别的,这个区别与 content="IE=7"在无论页面是否包含<!DOCTYPE> ...
随机推荐
- lucene和es总结
一.首先介绍lucene涉及到的排序过程 1.1.如何自定义排序对象 你可以自定义collector对象: 亦可以自定义comparator对象: 可以自定义scoredoc对象,决定如何处理结果集合 ...
- [转]html5表单上传控件Files API
表单上传控件:<input type="file" />(IE9及以下不支持下面这些功能,其它浏览器最新版本均已支持.) 1.允许上传文件数量 允许选择多个文件:< ...
- Java演算法之堆排序(HeapSort)
import java.util.Arrays; publicclass HeapSort { inta[]={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,9 ...
- 用DataGridView导入TXT文件,并导出为XLS文件
使用 DataGridView 控件,可以显示和编辑来自多种不同类型的数据源的表格数据.也可以导出.txt,.xls等格式的文件.今天我们就先介绍一下用DataGridView把导入txt文件,导出x ...
- 对改善ABP的一些建议
园子里有不少同学对ABP框架很感兴趣,而且也已经将ABP用在了商用项目中,有些可能还在操练阶段.一般来说,我们使用ABP默认的一些功能已经足够了,但还是有很多人想要自己拓展一些功能而自己实现不了或者说 ...
- java中文乱码解决之道(五)-----java是如何编码解码的
在上篇博客中LZ阐述了java各个渠道转码的过程,阐述了java在运行过程中那些步骤在进行转码,在这些转码过程中如果一处出现问题就很有可能会产生乱码!下面LZ就讲述java在转码过程中是如何来进行编码 ...
- 新版C#编译器关于函数闭包的一处更改
感谢@DiryBoy的补充,他提到这个问题在MSDN上是有说明的: http://msdn.microsoft.com/en-us/library/vstudio/hh678682.aspx 在Vis ...
- 表格搞定 Asp.net Web 状态管理
最近在网上搜罗了 ASP.NET WEB 状态管理方面的一些内容,终于把这些内容整合总结了一下. 1. 希望自己通过整理,能够掌握一些,为自己投资. 2. 以便自己忘记,又要浪费时间搜罗. 3. 希望 ...
- 决策树和基于决策树的集成方法(DT,RF,GBDT,XGBT)复习总结
摘要: 1.算法概述 2.算法推导 3.算法特性及优缺点 4.注意事项 5.实现和具体例子 内容: 1.算法概述 1.1 决策树(DT)是一种基本的分类和回归方法.在分类问题中它可以认为是if-the ...
- Android开发学习之路-让注解帮你简化代码,彻底抛弃findViewById
本文主要是记录注解的使用的学习笔记,如有错误请提出. 在通常的情况下,我们在Activity中有一个View,我们要获得这个View的实例是要通过findViewById这个方法,然后这个方法返回的是 ...