watir 在ROBOT中的应用

上一篇 / 下一篇  2009-07-13 20:32:13 / 个人分类:RUBY

下面是我写的一段ruby程序,主要用于枚举页面中的控件元素,来组装数据模板

def show_robot(ieone)
      puts "-----------Objects in  page 1-------------"
      doc = ieone.document
      s = ""
      props=["text", "name" ,"value","href"]
      doc.all.each do |n|
          begin
              obj_type = n.invoke("type").to_s
              obj_opt = ""
              if obj_type != ""
                  case  obj_type
                    when "submit"
                      obj_opt = "click"
                    when "button"
                      obj_opt = "click"
                    when "text"
                      obj_opt = "set"
                    when "select-one"
                      #puts ieone.select_list(:name, n.invoke("name")).getAllContents
                      puts "begin..."
                      #sl = n.invoke("innerText")
                      sl = ieone.select_list(:name, n.invoke("name")).getAllContents
                      sl.each do |sl_one|
                        begin
                          puts sl_one
                          puts ieone.select_list(:name,n.invoke("name")).option(:text, sl_one).value()
                        rescue
                          next
                        end
                      end
                      puts "end ..."
                    else
                      obj_opt = "oth"
                  end
                  s=s+"TAG=WEBID\t"+n.invoke("type").to_s.ljust(16) + "\t#{obj_opt}\t"
              else
                  s=s+n.invoke("type").to_s.ljust(16)
                  #p = n.invoke(prop)
                  #       temp_var = "#{p}".to_s.ljust(printsize)
                  #continue
              end
          rescue
              next
          end
          props.each do |prop|
              begin
                  p = n.invoke(prop)
                  s =s+ "\t" + "#{prop}=#{p}".to_s.ljust(18)
              rescue
                  # this object probably doesnt have this property
              end
          end
          s=s+"\n"
      end
      puts s+"\n\n\n"
  end 


TAG:

 

评分:0

我来说两句

日历

« 2024-04-19  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 30585
  • 日志数: 37
  • 建立时间: 2008-07-09
  • 更新时间: 2009-07-23

RSS订阅

Open Toolbar