WebSpec自动访问页面的使用

来源:互联网 发布:嵌入式linux开发pdf 编辑:程序博客网 时间:2024/05/07 18:56

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://sourceforge.net/projects/watij/files/

 
API:
http://watij.com/webspec-api/
 
好酷的自动化测试框架,超酷的自动化请求爬虫框架!
 
从watij升级后,发现,这个已经远远地超过了httpclient,大大提高了开发效率!
 
http://blog.csdn.net/waleking/article/details/7271003
http://blog.sina.com.cn/s/blog_66ed71e1010132j1.html
 
0 0
原创粉丝点击