Tom和Coco是有名的加班狂人。Tom加班改bug,Coco加班回归bug。

两人经常加班到很晚,Tom是男孩子,很自然的担负起护送Coco的任务。他打车先送Coco回去,然后自己回家。不过Tom和Coco在路上交流很少,无非就是寒暄几句,问下bug的情况,然后抱怨几句。Coco一直认为Tom有点口吃,其实Tom说话还是挺流利的,只是一见到Coco他就莫名紧张,脸红脖子粗,像喝多了酒,舌头有点哆嗦。

Tom和Coco在同一个项目,Fred是项目经理。Fred有一种超凡的能力,那就是能让所有的人都讨厌他。老板讨厌他,工程师讨厌他,测试人员更讨厌他。Fred爱好空手道,他决定像空手道的段位一样,给每个测试人员也划分等级。Coco是抓虫能手,应该被封为1级。既然空手道叫黑带,那么测试人员的等级就叫白带好了。于是Coco被尊称为"白带九段"。后来在测试组的美眉们的强力反对下,这种等级制度才没有实施。

最近Fred住院了,因为他在车上见义勇为,怒斗小偷,结果被小偷的同伙群殴。好在Fred会一点空手道,在挨打时他一直紧紧的护着自己的要害部位,因此才没有被断子绝孙腿给重伤。诸位同事听到这个悲惨的消息不禁唏嘘:实在是太可惜了,怎么没把他打成太监。

Fred在医院努力为自己搜罗工伤的证据,项目这边没人督促,大家轻松了不少。

这天晚上大家走的都很早,唯独Tom和Coco两人在办公室加班。Tom本来没什么事,不过看到Coco留了下来,他直觉的感到今天可能是一个不错的机会。

Coco给Tom叫了外卖,吃完后Coco继续把今天修改的bug再重新回测一遍,Tom坐立不安,好几次站起来又坐下。他想找Coco搭讪,但是却找不到两个人之间应该聊些什么话题。Tom知道Coco应该去网上买衣服、鞋子、化妆品之类,但Tom对这些基本没什么研究。

到底应该去聊些什么好呢?Tom很为难。最后做了装口吃卖萌的最坏打算,Tom走到Coco座位旁边有些急促的、很不自然的问道:"hi,你在干什么呢?"

这是一句明知故问又很没养分的话,在《宅男把妹作死宝典》里,这句话高居作死榜第一名。不过Coco却看起来和高兴的说:"在回测bug,挺无聊的,但又必须做完。你呢,你今天的bug不是改完了么,怎么还没回去?"

Tom没有回答Coco的问题,他努力的平复了一下说道:"整天做一些重复性的工作实在是太辛苦了。我知道有个办法可以让电脑自动帮我们回测bug,你要是感兴趣的话,我可以教,你要是感兴趣的话,我可以教你"。

Coco疑惑道:"自动回测,那不太可能吧。"

Tom道:"真的可以的,用watir webdriver就可以。我正好略懂一点,教你的话可以吗?"

Coco嫣然一笑:"好啊好啊,尽管不知道这是什么,但是听起来却是很厉害的样子。"

Tom心中一喜,脸上自然流露出一点异样的表情,在Coco看来,那表情里满满都是想入非非的淫荡。

Tom赶紧把脸上的坏笑清除干净,他说道:"其实watir webdriver很简单了,我先教你部署坏境,也就是这个工具的开发环境。先要装好ruby,一般来说用rails installer就可以了。装好以后呢打开命令行,在命令行里输入 gem install watir-webdriver,然后喝杯咖啡就大功告成了。"

Tom一边说一边指导Coco操作,很快,watir webdriver就安装好了。

Tom接着说:"然后呢要下载一个叫做chrome driver的东西,因为我们的项目都是在chrome上面做测试,下载了chrome driver以后,我们就可以写代码控制chrome,让浏览器做任何事情都可以的。"

很快,coco在tom的帮助下从官网下载好了chrome driver,tom让coco敲了如下的一段代码来测试一下环境是否能正常工作。

require 'watir-webdriver'
Watir::Browser.new :chrome

coco敲错了几次后终于把正确的代码给写了出来,coco没想到简单的两行代码就能够出现如此多乱七八糟的错误,看来程序员这行饭也不容易吃。

coco把两行代码保存成了test.rb文件,然后在命令行里运行ruby test.rb,过了一会以后黑乎乎的命令行里打印出了一些东西,然后chrom浏览器被启动起来了。

"看!"tom兴奋的说,"chrome起来了,太棒了!"

coco疑惑的看着tom悠悠的问道:"这有什么好兴奋的,只是开了个浏览器而已,这东西怎么能帮我回测bug呢?"

tom不好意思的摸了摸头说:"打开浏览器是好的开始,接下来我再教你怎么去访问一个url。"

在tom的指导下,coco又在test.rb文件里加入了几行代码

require 'watir-webdriver'
b = Watir::Browser.new :chrome
b.goto 'www.17test.info'
b.close

运行完这个文件后,coco看到chrome浏览器被打开了,然后浏览器访问了watir-webdriver的官方中文站点——www.17test.info。

tom说道:"尽管这几行代码的功能很简单,但是你想想,如果我写个循环让代码自动去访问这个网页1000次,那样会不会比自己手动去访问17test.info1000次要省时省力呢?"

coco想了想,觉得很有道理。coco问道:"刚才我写的是ruby代码吧,不过我基本上不明白这几行代码是什么意思。"

tom说道:"今天已经晚了,我送你回家,你有空自己先看看ruby的语法,你有兴趣的话下次我继续教你。"

爱在watir(1)----一切从搭讪开始的更多相关文章

  1. 【开源毕设】一款精美的家校互动APP分享——爱吖校推 [你关注的,我们才推](持续开源更新3)附高效动态压缩Bitmap

    一.写在前面 爱吖校推如同它的名字一样,是一款校园类信息推送交流平台,这么多的家校互动类软件,你选择了我,这是我的幸运.从第一次在博客园上写博客到现在,我一次一次地提高博文的质量和代码的可读性,都是为 ...

  2. 开发者最爱的Firebug停止更新和维护

        近日,Firebug团队在其官网上宣布,Firebug将不再继续开发和维护,并邀请大家使用Firefox的内置开发工具.     Firebug最初是2006年1月由Joe Hewitt编写, ...

  3. Win下最爱效率利器:AutoHotKey

    AutoHotkey是一个windows下的开源.免费.自动化软件工具.它由最初旨在提供键盘快捷键的脚本语言驱动(称为:热键),随着时间的推移演变成一个完整的脚本语言.但你不需要把它想得太深,你只需要 ...

  4. Menu与ActionBar的爱恨情仇

    最近在开发一款音乐播放器,在开发过程中遇到了一点小麻烦,通过android API搞清楚了Menu与ActionBar的爱恨情仇,写了个小Demo祭奠一下那些年我们陷进去的坑,有不对的地方请大神们批评 ...

  5. “我爱背单词”beta版发布与使用说明

    我爱背单词BETA版本发布 第二轮迭代终于画上圆满句号,我们的“我爱背单词”beta版本已经发布. Beta版本说明 项目名称 我爱背单词 版本 Beta版 团队名称 北京航空航天大学计算机学院  拒 ...

  6. 爱与恨的抉择:ASP.NET 5+EntityFramework 7

    EF7 的纠缠 ASP.NET 5 的无助 忘不了你的好 一开始列出的这个博文大纲,让我想到了很久之前的一篇博文:恋爱虽易,相处不易:当EntityFramework爱上AutoMapper,只不过这 ...

  7. 如何寻找“真爱”型合伙人

          曾与朋友笑侃,现在找人结婚,跟合伙开公司差不多,各自条件一一对比,细细斟酌,最后双方达成一致,才得凑成一对冤家.谁说不是呢?两种关系都实为"伙伴",开公司重" ...

  8. web移动端fixed布局和input等表单的爱恨情仇 - 终极BUG,完美解决

    [问题]移动端开发,ios下当fixed属性和输入框input(这里不限于input,只要可以调用移动端输入法的都包括,如:textarea.HTML5中contenteditable等),同时存在的 ...

  9. 程序员用HTML5制作的爱心树表白动画

    体验效果:http://keleyi.com/keleyi/phtml/html5/31.htm 推荐:http://hovertree.com/texiao/css3/18/ HTML代码如下: & ...

随机推荐

  1. SQL -主键&外键

    在创建表的时候,添加主键 CREATE TABLE table_name (column_1 char(10) PRIMARY KEY, column_2 char(10) ) 如果已经创建了表,如何 ...

  2. 13 - NSURLConnection

    一.互联网 基本概念: HTTP协议 统一标准获取网络资源(其他设备上的东西) 本机 -> 远程服务器(计算机) URL(http有格式的字符串) 本机 <- 远程服务器(计算机) Fil ...

  3. java操作Excel处理数字类型的精度损失问题验证

    java操作Excel处理数字类型的精度损失问题验证: 场景: CELL_TYPE_NUMERIC-->CELL_TYPE_STRING--->CELL_TYPE_NUMERIC POI版 ...

  4. ecosphere是什么意思_ecosphere的翻译_音标_读音_用法_例句 - 必应 Bing 词典

    ecosphere是什么意思_ecosphere的翻译_音标_读音_用法_例句 - 必应 Bing 词典 ecosphere

  5. 怎样在android实现uc和墨迹天气那样的左右拖动效果

    import android.app.Activity; import android.os.Bundle; import android.content.Context; import androi ...

  6. hdu 2896 病毒侵袭 AC自动机 基础题

    病毒侵袭 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  7. [ACM] hdu 1251 统计难题 (字典树)

    统计难题 Problem Description Ignatius近期遇到一个难题,老师交给他非常多单词(仅仅有小写字母组成,不会有反复的单词出现),如今老师要他统计出以某个字符串为前缀的单词数量(单 ...

  8. sharepoint 2013 根据网站模版创建网站,并赋值网站权限 create a site by custom site template

    通过程序,根据网站模版,创建新的网站 private void CreateSiteBySiteTemplate() { SPSecurity.RunWithElevatedPrivileges(de ...

  9. Java引用详解

    区分几个概念 ,类 .对象 .对象的引用 A  a1  = new A(); A a2 = a1; a1-------------------->对象内存<---------------- ...

  10. 解决swfupload上传控件文件名中文乱码问题 三种方法 flash及最新版本11.8.800.168

    目前比较流行的是使用SWFUpload控件,这个控件的详细介绍可以参见官网http://demo.swfupload.org/v220/index.htm 在使用这个控件批量上传文件时发现中文文件名都 ...