摘要: 测试对象定位一般都是各种web自动化测试框架或工具的核心内容。selenium-Webdriver的对象定位方法非常的丰富和强大。一般来说强大的对象定位都会提供如下的一些方法。单个对象的定位方法多个对象的定位方法层级定位selenium-Webdriver很好的支持了上述的3种定位方式。定位单个对象在定位单个对象时,selenium-Webdriver支持使用如下的一些属性对元素进行定位。:class => 'class name',:class_name => 'class name',:css => 'css selecto... 阅读全文
posted @ 2011-10-22 22:49 乙醇 阅读(8727) 评论(1) 推荐(2) 编辑
摘要: 有时候在进行自动化测试时需要在页面上执行一段js脚本,这个时候就需要用到execute_script方法了。require 'rubygems'require 'selenium-webdriver'dr = Selenium::WebDriver.for :ieurl = 'http://www.soso.com'dr.navigate.to urlsleep 3js = <<JS q = document.getElementById("tb"); q.style.border = "1px soli 阅读全文
posted @ 2011-10-22 21:38 乙醇 阅读(5056) 评论(3) 推荐(1) 编辑
摘要: 上一讲我们介绍了如何部署selenium 2.0的开发环境,这一讲我们将介绍如何使用selenium提供给我们的接口进行浏览器的简单操作。本文将先介绍适合初级用户的一些常用方法,然后将对一些高级用法和实现源码进行稍微深入一些的分析。如何打开一个测试浏览器做自动化测试一般情况下我们都需要首先打开测试浏览器,浏览器开启后我们方可"命令"浏览器去打开新页面,点击特定的链接,判断具体的逻辑等等。因此该操作为"万里长征的第一步",必须给以重视。具体代码如下。需要注意的是如果使用chrome进行测试,那么必须下载安装chrome driver。require  阅读全文
posted @ 2011-10-22 19:23 乙醇 阅读(5941) 评论(4) 推荐(2) 编辑
摘要: Selenium 1.x时代已经远去,它理应躺在历史的角落里,靠着壁炉烤着火,抽着旱烟,在袅袅的升起的青烟中回忆那曾经属于自己的美好时代。 不过事实却并非如此,现今原本早应退役的selenium 1.x却还是多数人坚定的选择,究其原因不过是1.x时代遗留下了大量的文档,代码,教程让人们误以为1.x还是这个年代的主流,还应该光鲜亮丽在前台演出属于它的美好。长江后浪推前浪,最为前浪的selenium 1.x的宿命应该是死在沙滩上。 阅读全文
posted @ 2011-10-22 19:17 乙醇 阅读(16540) 评论(7) 推荐(9) 编辑
摘要: 前几天在《戏说设计模式》这篇文章中看到了一段关于组合模式的描述:COMPOSITE—Mary今天过生日。“我过生日,你要送我一件礼物。”“嗯,好吧,去商店,你自己挑。”“这件T恤挺漂亮,买,这条裙子好看,买,这个包也不错,买。”“喂,买了三件了呀,我只答应送一件礼物的哦。”“什么呀,T恤加裙子加包包,正好配成一套呀,小姐,麻烦你包起来。” “……”,MM都会用Composite模式了,你会了没有?这个例子还是比较通俗的解释了合成模式的。所谓合成模式就是指将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式就是一个处理对象的树结构的模式。合成模式把部分与整体的关系用树结构表示出来。合成模 阅读全文
posted @ 2011-07-26 19:07 乙醇 阅读(610) 评论(0) 推荐(0) 编辑
摘要: 昨天因为要装watir-webdriver的原因将用了快一年的ruby1.8.6升级到了1.9。由于1.9是原生支持unicode编码,所以我们可以使用中文进行自动化脚本的编写工作。做了简单的封装后,我们可以实现如下的自动化测试代码。请注意,这些代码是可以正确运行并作为正式的自动化测试用例的。1 测试浏览器 = Watir::Browser.new :firefox2 测试浏览器.转到 'www.google.com'3 在(测试浏览器.的.text_field(:name, "q")).中.输入 "qq"4 点击 测试浏览器.的.but 阅读全文
posted @ 2011-07-23 14:21 乙醇 阅读(3136) 评论(6) 推荐(3) 编辑
摘要: bluecloth是一种ruby语言实现的text to html转换器。关于bluecloth的介绍如下:BlueCloth is a Ruby implementation ofMarkdown, a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).bluecloth作为老 阅读全文
posted @ 2011-07-23 14:18 乙醇 阅读(407) 评论(0) 推荐(1) 编辑
摘要: AutoIt是windows上强大的自动化工具。我们可以通过ruby去调用AutoItX3.dll来使用autoit的部分功能。具体代码如下1require'win32ole'2at=WIN32OLE.new('AutoItX3.Control')34#然后就可以使用5at.WinWait6at.Send 阅读全文
posted @ 2011-07-23 14:16 乙醇 阅读(609) 评论(0) 推荐(0) 编辑
摘要: 昨天在stack overflow上问了2个关于Rspec源码的问题,结果由于表意不清加之问题含糊被老外鄙视了一遍。但是没有想到的是,竟然还是高人非常清楚的问答了出来。其中一个问题是这样的:classOptionParser<::OptionParser这句代码究竟是什么意思?原来这句话的作用是定义1个OptionParser类,其集成至ruby核心库的OptionParser。这句话里面的::表示强制使用核心库的namespace。万恶的ruby语法。 阅读全文
posted @ 2011-07-23 14:14 乙醇 阅读(532) 评论(0) 推荐(0) 编辑
摘要: 从上一篇博文我们可以看出,策略模式的策略类实际上就是一组实现特定功能的代码集合。而ruby实际上已经原生提供了操作一组代码集合的对象,Proc类。于是我们可以用更加ruby些的方式来实现我们的Report类和策略模式。具体代码如下:classReportattr_reader:title,:textattr_accessor:formatterdefinitialize&formatter@title='Myreporttherubyway'@text=['Thisisareport','whichwaswritten','int 阅读全文
posted @ 2011-07-23 14:11 乙醇 阅读(1003) 评论(0) 推荐(0) 编辑

友情链接 虫师的blog  测试教程网  重定向科技  省略