selenium处理上传弹出框(ruby版)

2010-07-16  刘俊 

昨天一同事问我用selenium如何处理上传弹出框,在网上搜了一下都是java版的,现在我用ruby写一个小例子给大家参考一下:
#原创啊,转载请把我的窝地址附上,
http://simple.testwo.com
require "rubygems"
require "selenium/client"
require 'spec/expectations'
require 'win32ole'


URL='http://www.google.com.hk/'
HOST = "localhost"
PORT = 4444
BROWSER = "*iexplore"
TIMEOUT_IN_SECOND = 60
@OPENFILE_TITLE = "选择文件"
@OPENFILE_OPEN = "打开(&O)"

@selenium = Selenium::Client::Driver.new \
    :host => HOST,
    :port => PORT,
    :browser => BROWSER,
    :url => URL,
    :timeout_in_second => TIMEOUT_IN_SECOND

@selenium.start_new_browser_session()

@selenium.open('http://192.168.1.225:8080/videos_captial/popups.html')
@selenium.wait_for_page

def openfile(filepath)
    autoit = WIN32OLE.new("autoitx3.control")
    autoit.WinWait(@OPENFILE_TITLE)
    autoit.WinActivate(@OPENFILE_TITLE)
    autoit.ControlFocus(@OPENFILE_TITLE,"","Edit1")
    autoit.ControlSetText(@OPENFILE_TITLE, "","Edit1",filepath)
    autoit.Send('{ENTER}')
end

@selenium.window_maximize
popup = Thread.new{openfile("c:\\2.rb")}  #另起一个线程来监控这个弹出框
@selenium.click("up")
at_exit { Thread.kill(popup) }
777°/7704 人阅读/7 条评论 发表评论

熊志男  2010-07-19

不会ruby


朱斌  2010-07-28

很精妙


刘俊  2010-07-29

朱斌: 很精妙


沈一初  2010-08-09

ruby好学吗?从网上下载了Programming+Ruby.pdf 纯英文版的,看着就头痛~


刘俊  2010-08-09

有中文版的啊,ruby我很烂的


王静静  2012-02-15

问一下selenium webdriver支持中文编码吗?我执行代码的时候汉字会变成乱码,怎么解决啊?是Ruby的问题还是selenium或是编辑器的问题, 我用的ruby版本是1.8.7,编辑器是Scite


刘俊  2012-02-20

王静静: 问一下selenium webdriver支持中文编码吗?我执行代码的时候汉字会变成乱码,怎么解决啊?是Ruby的问题还是selenium或是编辑器的问题, 我用的ruby版本是1.8.7,编辑器是S
用iconv转一下


登录 后发表评论