http://www.cnblogs.com/Javame/p/4045229.html

test:

#require 'net/http'
#require 'uri'
#url = URI.parse("https://www.baidu.com/baidu?wd=%E5%8F%91%E7%94%9F%E5%9C%B0%E6%96%B9&tn=monline_4_dg&ie=utf-8")
#http = Net::HTTP.start(url.host, url.port)
#doc = http.get(url.to_s)
#puts doc
=begin
begin
input = File.open("liuyang.txt")
input.each do |line|
printf("%s,%d", line, line.size)
end
input.close
a =1
printf("\n%d\n", a)
rescue => ex
puts "**************"
puts ex.message #message : �쳣��Ϣ
puts ex.backtrace #backtrace $@ : �쳣��λ����Ϣ
sleep(3)
retry #ʹ��retry��beginһ�µĴ������������һ��
ensure
puts "no matter what happened , execute" #�����Ƿ����쳣������Ҫִ��
end def myloop
while true
yield
end
end
puts "**********"
mun = 1
begin myloop do
puts mun
mun += 1
if mun > 2
break
end
puts "**********"
end
rescue => ex
puts ex.message
puts ex.backtrace
end
puts "###########" n = 1.upto(3) do |num|
puts num
if num ==4
break 1234
end
if num < 3
redo
end
break num
end
puts "###########"
puts n a = Rational(1,3)
b = Rational(1,6)
puts (a+b).to_f
c = Complex(1,3)
puts c =end =begin
require 'watir-classic'
def deal_alert(browser, operation="")
if browser.alert.exists? # Check if alert is shown
text = browser.alert.text # Gettext of alert
puts "你好"
if operation=="确定"
browser.alert.clock #click ok
elsif ["cancel","close"].include? operation
browser.alert.close # click close
end
puts text
else
puts "alert dialog not exist!"
end
end
brow = Watir::IE.new
browser = Watir::Browser.new
browser.goto("https://www.baidu.com/")
browser.text_field(:id=>"user_id").set"刘洋12"
frname = browser.document.frames
puts frname.length
# browser.frame(frname).button(id,"su").click
browser.button(:id=>"su").click
browser.goto("file:///D:/我的文档/Programs/Html/web/Home.html")
browser.text_field(:id=>"user_id").set"刘洋12"
browser.text_field(:id=>"code_id").set""
browser.button(:id=>"enter_id").click
deal_alert(browser, operation="")
browser.frames.each do |frame|
puts "top level frame info :" + frame
frame.frames.each do |innerframe|
puts "second tier frame data is: " + innerframe
end
=end
# browser.text_field(:name,"q").set"My"
# browser.text_field(:xpath=>'//name@name="q"').set"My start here"
#browser.button(:name=>"btnG").click require 'watir-classic' # the watir controller
require 'watir-classic/dialogs/alert'
require 'Win32API'
# open the IE browser
browser = Watir::Browser.new
# Step 1: go to the test site: http://www.google.com
#browser.goto ("file:///D:/我的文档/Programs/Html/web/System_display.html") # browser.frame(" ").radio(:id => "red").set browser.goto("file:///D:/我的文档/Programs/Html/web/Home.html")
title_name = "来自网页的消息"
ai = WIN32OLE.new('AutoItX3.Control')
ai.WinWaitActive(title_name,"",5)
ai.controclick(title_name,"","确定")
browser.button(:id=>"enter_id").click browser.alert do
browser.button(:value =>"fail").click
end
browser2 = Watir::Browser.attach(:title,"TBUSF System")
browser2.close
a = browser.alert
puts a frame_all = browser.document.frames
puts frame_all.length
for i in 0...frame_all.length end
=begin
browser.frame(:name=>"frame_name").radio(:id => "red").set
puts browser.frame(:name=>"frame_name").radio(:id => "red").set?
sleep(1)
browser.frame(:name=>"frame_name").radio(:id => "green").set
puts browser.frame(:name=>"frame_name").radio(:id => "green").set?
sleep(1)
browser.frame(:name=>"frame_name").radio(:id => "blue").set
puts browser.frame(:name=>"frame_name").radio(:id => "green").set?
sleep(1)
#browser.show_frames if browser.radio(:id => "red").set?
puts "yes"
end
browser.radio(:id => "red").set
if browser.radio(:id => "red").set?
puts "yes"
end
sleep(1)
browser.radio(:id => "blue").set
sleep(1)
browser.radio(:id => "green").set
sleep(1)
puts "liuyang"
=end # Step 2: enter 'pickaxe' in the search text field
# ie.text_field(:name, "q").set("pickaxe") # q is the name of the search field
# Step 3: click the 'Google Search' button
# ie.button(:name, "btnG").click # "btnG" is the name of the Search button
# Actual Result: Check that the 'Programming Ruby' link appears on the results page # End of test: Google search

Watir单元库的更多相关文章

  1. ABP框架系列之五:(Unit Of Work-工作单元)

    Introduction Connection and transaction management is one of the most important concepts in an appli ...

  2. RAutomation 在 Watir中的使用

    RAutomation的用法 require "rautomation" # 通过匹配部分标题来获取窗口 window = RAutomation::Window.new(:tit ...

  3. Cadence物理库 LEF 文件语法学习【持续更新】

    我是 雪天鱼,一名FPGA爱好者,研究方向是FPGA架构探索. 关注公众号,拉你进"IC设计交流群". @ 目录 一.LEF简介 1.1 通用规则 1.2 管理 LEF 文件 二. ...

  4. ANSYS经典APDL编程

    在使用ANSYS的过程中的一些经验总结: Ansys Workbench 有限元分析虽然进入UI阶段,但是语言命令仍然是其基础核心. 1.ANSYS中的一些关键概念的理解; 参数化程序设计语言(APD ...

  5. jbpmAPI-3

    第三章.jBPM安装程序 3.1 .先决条件这个脚本假设您具备Java JDK 1.6 +(设置JAVA_HOME),和Ant 1.7 +安装.如果你没有,请使用以下链接下载并安装:Java:http ...

  6. ICC_lab总结——ICC_lab1:数据设置和基本流程

    ICC_lab总结 最近在学习后端的流程,做lab是最好不过了.但是有时候做过了lab,过了一段时间之后就会忘记,因此需要自己总结一下,加强印象. ICC_lab1:数据设置和基本流程 数据设置: 一 ...

  7. Tcl与Design Compiler (四)——DC启动环境的设置

    本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 主要内容有: ·启动环 ...

  8. 关于Verilog HDL的一些技巧、易错、易忘点(不定期更新)

    本文记录一些关于Verilog HDL的一些技巧.易错.易忘点等(主要是语法上),一方面是方便自己忘记语法时进行查阅翻看,另一方面是分享给大家,如果有错的话,希望大家能够评论指出. 关键词: ·技巧篇 ...

  9. 了解FPGA市场现状和未来趋势

    转, 来源: http://www.sohu.com/a/204640373_740053 可编程的“万能芯片” FPGA——现场可编程门阵列,是指一切通过软件手段更改.配置器件内部连接结构和逻辑单元 ...

随机推荐

  1. python中字符串格式化的意义(化妆)

    格式 描述%% 百分号标记 #就是输出一个%%c 字符及其ASCII码%s 字符串%d 有符号整数(十进制)%u 无符号整数(十进制)%o 无符号整数(八进制)%x 无符号整数(十六进制)%X 无符号 ...

  2. jQuery 遍历 - 后代

    向下遍历 DOM 树 下面是两个用于向下遍历 DOM 树的 jQuery 方法: children() find() jQuery children() 方法 children() 方法返回被选元素的 ...

  3. java中的compareto方法的详细介绍

    java中的compareto方法的详细介绍 Java Comparator接口实例讲解(抽象方法.常用静态/默认方法) 一.java中的compareto方法 1.返回参与比较的前后两个字符串的as ...

  4. Mybatis实际练习

    1.mybatis在xml文件中处理大于号小于号的方法 第一种方法: 用了转义字符把>和<替换掉,然后就没有问题了. SELECT * FROM test WHERE 1 = 1 AND ...

  5. django优化--ORM查询

    ORM提供了两个方法用来优化查询效率 1. select_related 有两张表:表结构如下: class Scheme(models.Model): """ 套餐类 ...

  6. Linux服务之httpd基本配置详解

    一.基本介绍 1.版本 httpd-1.3 httpd-2.0 httpd-2.2 httpd-2.4 目前为止最新的版本是httpd-2.4.6,但是这里我用的是系统自带的RPM包安装的httpd- ...

  7. jQuery和Prototype的兼容性和冲突的多种解决方法

    有两种情况: 1.先加载Prototype,再加载jQuery. 2.先加载jQuery,再加载Prototype. 针对情况1:先加载Prototype,再加载jQuery.方法一:jQuery 库 ...

  8. cudaDeviceProp结构体

    struct cudaDeviceProp {char name[256];         //器件的名字size_t totalGlobalMem;    //Global Memory 的byt ...

  9. JAVA GUI设

    1.两种设置大小的方式: //Border border1=BorderFactory.createEmptyBorder(20,20,20,20); //设置大小        panel.setB ...

  10. eclipse编码格式(中文乱码)

    https://jingyan.baidu.com/article/2009576193ee38cb0721b416.html 修改工作空间默认编码 1 进入Eclipse,导入一个项目工程,如果项目 ...