乐意黎 - Aerchi.com 乱炖大杂汇

最近的你, 是我最远的爱 | | www.aerchi.com

WebSpec自动访问页面的使用

WebSpec是Watij自动化测试项目里面的一个类。Watij工具调用ie、firefox等浏览器对网页进行测试,也就是说可以解析javascript,对于那些需要手工操作的填表单等工作都可以用Watij模拟。


下面以自动点击baidu,并填入“黄河”为搜索关键词进行搜索作为例子。

先用Dreamweaver查看baidu首页的源代码。


[html] view plaincopy
  1. <div id="m"><p id="lg"><img src="http://www.baidu.com/img/baidu_sylogo1.gif" width="270" height="129" usemap="#mp"><map name="mp"><area shape="rect" coords="40,25,230,95" href="http://hi.baidu.com/baidu/" target="_blank" title="点此进入 百度的空间" ></map></p><p id="nv"><a href="http://news.baidu.com">新 闻</a> <b>网 页</b> <a href="http://tieba.baidu.com">贴 吧</a> <a href="http://zhidao.baidu.com">知 道</a> <a href="http://mp3.baidu.com">MP3</a> <a href="http://image.baidu.com">图 片</a> <a href="http://video.baidu.com">视 频</a> <a href="http://map.baidu.com">地 图</a></p><div id="fm"><form name="f" action="/s"><span class="s_ipt_wr"><input type="text" name="wd" id="kw" maxlength="100" class="s_ipt"></span><input type="hidden" name="rsv_bp" value="0"><input type="hidden" name="rsv_spt" value="3"><span class="s_btn_wr"><input type="submit" value="百度一下" id="su" class="s_btn" onMouseDown="this.className='s_btn s_btn_h'" onMouseOut="this.className='s_btn'"></span></form><span class="tools"><span id="mHolder"><div id="mCon"><span>输入法</span></div></span></span><ul id="mMenu"><li><a href="#" name="ime_hw">手写</a></li><li><a href="#" name="ime_py">拼音</a></li><li class="ln"></li><li><a href="#" name="ime_cl">关闭</a></li></ul></div>  


输入框对应的源代码:<input type="text" name="wd" id="kw" maxlength="100" class="s_ipt">

“百度一下”按钮对应的源代码:<input type="submit" value="百度一下" id="su" class="s_btn" onMouseDown="this.className='s_btn s_btn_h'" onMouseOut="this.className='s_btn'">


用WebSpec打开baidu的url,并填入“黄河”,点击搜索:

[html] view plaincopy
  1. public void run(){  
  2.         WebSpec spec = new WebSpec().ie();  
  3.         if(spec.ready())  
  4.         {     
  5.             spec.open(url);  
  6.             spec.pauseUntilReady();  
  7.             spec.find.input().with.name("wd").set.value("黄河");  
  8.             spec.find.input().with.id("su").click();  
  9.             System.out.println(spec.source());  
  10.         }  
  11.         else{  
  12.             System.out.println("not ready");  
  13.         }  
  14.         spec.close();  
  15. }  
http://blog.csdn.net/waleking/article/details/7271003
阅读更多
上一篇让IE6/IE7/IE8支持CSS3属性的脚本ie-css3.htc
下一篇几则正则表达式例子
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭