2012年9月12日

ruby+selenium-webdriver一步一步完成自动化测试(2)—–一个测试用例

摘要: 上一篇的小例子可以正常执行通过,但是这并不代表就可以按照这个思路写测试代码了。自动化测试与手工测试是一样的,要有测试用例,有执行有结果,但是上一篇的例子里并没有。众所周知,java开发用JUnit进行单元测试、C#开发用NUit进行单元测试,selenium-webdriver也需要一个这样的测试框架来执行测试用例,这个框架可以用test::Unit,也可以用文中所用的rspec目标:利用测试框架rspec创建一个测试用例,运行上一节的代码1.安装rspec命令行中执行命令:gem install rspec2.D盘下新建目录test0023.test002中新建文件夹spec4.打开编辑器S 阅读全文

posted @ 2012-09-12 18:19 tim_sheng 阅读(1984) 评论(0) 推荐(1) 编辑

ruby+selenium-webdriver一步一步完成自动化测试(1)—–第一个小例子

摘要: 第一个小例子,登录soso首页,简单直观易懂。通常我们都是这样写的,网上各种例子也是这样的。1.打开文本编辑器SciTe2.file–new新建一个文件,写下如下代码#encoding = gbkrequire 'selenium-webdriver'chrome = Selenium::WebDriver.for :chromeurl = 'http://www.soso.com'chrome.get url#~ link = ff.find_element(:id,'ua').find_element(:link,'登录')l 阅读全文

posted @ 2012-09-12 17:08 tim_sheng 阅读(2364) 评论(0) 推荐(0) 编辑

2012年9月11日

Selenium Grid深入学习

摘要: 应网友要求写一个用Selenium Grid控制多系统多浏览器并行执行test case的例子。因为我这里有两台机子,我打算这样演示:一台机子启动一个作为主点节的hub 和 一个作为次节点的hub(系统windows 浏览器为ie) ip为:192.168.40.24另一台机子启动两个次节点hub,一个次节点浏览器为firefox,另一个浏览器为chrome (系统为windows),ip为:192.168.40.67启动各节点hub启动主节点hub命令:java -jar selenium-server-standalone-2.24.1.jar -role hub启动与主节点同一机子的次节 阅读全文

posted @ 2012-09-11 11:58 tim_sheng 阅读(5069) 评论(2) 推荐(1) 编辑

Selenium Grid

摘要: Selenium Grid允许同时并行地、在不同的环境上运行多个测试任务。这里主要演示一下怎么使用Selenium Grid。准备:1、需要两台机子2、两台机子分别安装好JDK环境3、两台机子需要从http://code.google.com/p/selenium/downloads/list下载selenium-server-standalone-*.jar包开始:Grid需要一台机子做为主节点,然后其它机子做为子节点连接到这个主节点上来。所以首先要启动主节点。启动主节点:选一台机子做为主节点。打开命令行,cd至selenium-server-standalone-*.jar包的目录下,然后 阅读全文

posted @ 2012-09-11 11:42 tim_sheng 阅读(3761) 评论(0) 推荐(0) 编辑

2012年9月5日

Selenium-webdriver系列教程(15)————万能的截图

摘要: 截图技能对于测试人员来说应该是较为重要的一个技能,就像踢假球是国内球员混迹中超的必备技能一般。在自动化测试中,截图可以帮助我们直观的定位错误、记录测试步骤。记得以前在给某跨国银行做自动化项目的时候,某银的PM要求我们自动化测试的每一步至少需要1个截图,以证明每个功能都被自动化测试给覆盖过,在这种情况下截图就成了证明自动化测试有效性的重要手段。好的测试人员都会截得一手好图,就跟骨灰级宅男定会吟得一手好诗一般。webdriver的截图功能十分强悍。以前在截图的时候,最麻烦的问题莫过于页面太长而只能截到一屏,屏幕以外需要移动滚动条才能看到的区域一般是截不到的。现在webdriver解决了这个问题,无 阅读全文

posted @ 2012-09-05 22:49 tim_sheng 阅读(6288) 评论(0) 推荐(0) 编辑

Selenium-webdriver系列教程(14)————为firefox设置代理

摘要: 下面的代码可以帮助你实现firefox测试运行时代理配置的功能。大概的思路是通过设置profile对象来进行配置。profile = Selenium::WebDriver::Firefox::Profile.new# 新建了url为proxy.org,端口为8080的htpp代理proxy = Selenium::WebDriver::Proxy.new(:http => "proxy.org:8080")profile.proxy = proxydriver = Selenium::WebDriver.for :firefox, :profile => pr 阅读全文

posted @ 2012-09-05 22:03 tim_sheng 阅读(494) 评论(0) 推荐(0) 编辑

Selenium-webdriver系列教程(13)————使用已存在的profile启动firefox

摘要: 关于firefox的profile,这里不想叙述太多,只说一点,那就是通过profile我们可以去修改测试运行时firefox的具体配置,对于firefox的自动化测试来说是必须掌握的一个知识点。使用selenium-webdirver操作profile的代码如下:# 使用已存在profile进行测试# 由于profile里保存有cookie等信息# 因此可以通过该技术来保持用户的登录态driver = Selenium::WebDriver.for(:firefox, :profile => "my-existing-profile")也可以在代码中动态的更改已存在 阅读全文

posted @ 2012-09-05 21:59 tim_sheng 阅读(644) 评论(0) 推荐(0) 编辑

Selenium-webdriver系列教程(12)————如何在启动firefox时加载扩展

摘要: 有时候我们需要在使用firefox测试时启动firebug,这时候就可以用到下面的代码require 'rubygems'require 'selenium-webdriver'profile = Selenium::WebDriver::Firefox::Profile.newprofile.add_extension 'where/the/extensions/locate/firebug.xpi'dr = Selenium::WebDriver.for :firefox, :profile => profile这段代码首先创建了1个新 阅读全文

posted @ 2012-09-05 21:56 tim_sheng 阅读(829) 评论(0) 推荐(0) 编辑

RSPEC-入门学习

摘要: 前言 要了解RSpec,我们首先需要了解什么是行为驱动开发(Behaviour Driven Development,简称BDD),BDD是一种融合了可接受性测试驱动计划(Acceptance Test Driven Planning),域驱动设计(Domain Driven Design)以及测试驱动开发(Test Driven Development,简称TDD)的敏捷开发模型。RSpec为BDD开发提供TDD支持。 这篇文章遵从TDD思想,但是我们将使用行为(behavior)和样例(example)来代替测试例(test case)和测试方法(test method)。介绍· 阅读全文

posted @ 2012-09-05 16:51 tim_sheng 阅读(6253) 评论(1) 推荐(0) 编辑

2012年8月23日

Selenium-webdriver系列教程(11)————fire event的替代方案

摘要: webdriver里面已经没有了fire_event方法,就像世界上再也没有萨达姆,本拉登和卡扎菲一样。不过我们可以通过其他方法来实现fire_event的相似功能。考虑下面的html,当鼠标悬停到Mouse Over Here链接上时,js的mouseover事件被触发,show_tips()函数将被执行,隐藏的tips div会显示在页面上。<html> <head> <title>FireEvent</title> <style> .mo {color: blue;} .tips {display:none;b... 阅读全文

posted @ 2012-08-23 15:15 tim_sheng 阅读(2329) 评论(0) 推荐(0) 编辑

导航