1 watir
当我读出Watir返回的HTML时,它给了我一个页面,指示我通过我的Mac或PC返回浏览器.似乎我被Watir提供的用户代理重定向.我以为我用Watir驱动浏览器,但似乎并非如此.
ie = Watir::IE.new
ie.goto "http://www.apple.com/safari/download"
ie.checkbox(:name, "21.1.9.12.3.1.3.0").clear
Run Code Online (Sandbox Code Playgroud)
它返回一个UnkownObjectException.与尝试单击"提交"按钮相同.
使用firebug我可以找到复选框,这就是我找到:name的方式.所以我接下来将Watir的HTML输出重定向到一个文件进行检查,
myfile = File.new("safaridebug.html", "w+")
myfile.puts ie.html
myfile.close
Run Code Online (Sandbox Code Playgroud)
通过safaridebug.html查看我注意到我在与Web浏览器不同的页面上.在watir中有什么我可以获得我的网络浏览器中存在的实际HTML,也许是用户代理欺骗?谢谢.
系统规格:运行Win XP SP2的VM,ruby 1.8.7,IE 8
在这种情况下,Watir正常工作.没有特殊的用户代理或Watir使用的任何东西,因为使用普通的旧IE并且它的用户代理当然是由IE本身发送的.
你找不到Watir或HTML的复选框的原因是复选框在框架中:)在那个html中寻找一个框架标签你可以理解为什么你以前找不到它.
您可以从框架中访问它:
b.frame(:id, "download-frame").checkbox(:name, "21.1.9.12.3.1.3.0").clear
Run Code Online (Sandbox Code Playgroud)
如果您在尝试访问框架时遇到访问被拒绝错误,请阅读http://wiki.openqa.org/display/WTR/Frames上的说明
| 归档时间: |
|
| 查看次数: |
951 次 |
| 最近记录: |