HtmlUnit测试入门
来源:互联网 发布:windows 8的记事本 编辑:程序博客网 时间:2024/05/29 18:43
HtmlUnit是junit的扩展框架之一,该框架模拟浏览器的行为,提供API对网页的元素进行操作。HtmlUnit支持HTTP、HTTPS、COOKIES、表单的POST和GET;能够对HTML文档进行包装,页面的各种元素可以被当做对象调用。
HtmlUnit把网页封装成一个对象,然后开发调用方法;HtmlUnit下载地址:http://htmlunit.sourceforge.net/ 下砸jar后,用Eclipse创建java project,右键选择properties->java build path->Add External JARs导入jar包后,创建class或junit test case。
一、载入页面
public void testHomePage() throws Exception{final WebClient webclient =new WebClient();//creat a new WebClient object which is equal to browserwebclient.getOptions().setCssEnabled(false);webclient.getOptions().setJavaScriptEnabled(false);//Not loading CSS and JavaScriptURL url=new URL("http://www.baidu.com/");//structure a URL which points to tested URL, such as www.baidu.comHtmlPage page=(HtmlPage) webclient.getPage(url);// return corresponding page through method getPage()System.out.print(page.getTitleText());assertEquals("百度一下,你就知道",page.getTitleText());}
WebClient是一个浏览器对象,含有多种浏览器上可进行的操作,,getPage函数就是通过url取得要访问的页面。getPage返回的文档被转化为HtmlPage对象,也就是被包装为HTML格式的对象,该对象可以输出页面的内容,标题,或者一个表格等等。
二、模拟特定浏览器
final WebClient webclient =new WebClient(BrowserVersion.CHROME);
//simulate chrome browser
三、使用get或xpath方法获取特定元素
HtmlDivision div2=(HtmlDivision)page2.getHtmlElementById("breadcrumbs");
HtmlDivision div1=(HtmlDivision) page1.getByXPath("//div").get(0); //获取到第一个div
四、输入网页内容
System.out.println(div1.asXml()); //以xml格式输出
System.out.println(div2.asText()); //以txt格式输出
五、输入字符并确认
public void testSearch() throws Exception{ final WebClient webclient =new WebClient();//creat a new WebClient object which is equal to browserwebclient.getOptions().setCssEnabled(false);webclient.getOptions().setJavaScriptEnabled(false);//Not loading CSS and JavaScriptURL url=new URL("http://www.baidu.com/");//structure a URL which points to tested URL, such as www.baidu.comHtmlPage page=(HtmlPage) webclient.getPage(url);// return corresponding page through method getPage()final HtmlForm form=page.getFormByName("f");final HtmlSubmitInput button1=form.getInputByValue("百度一下");//get button by valuefinal HtmlTextInput textField =form.getInputByName("wd"); //get textfield by nametextField.setValueAttribute("python学习");final HtmlPage nextPage=button1.click(); //submit search keywordString result =nextPage.asXml(); //get search resultSystem.out.println(result);
- HtmlUnit测试入门
- HtmlUnit入门
- 简单入门HtmlUnit
- HtmlUnit
- HTMLUnit
- htmlunit
- htmlunit
- HtmlUnit
- htmlunit
- 【转】 HtmlUnit进行Web自动化测试
- HtmlUnit在本地化测试中的使用
- HtmlUnit学习笔记(一)--快速入门
- 利用htmlunit下载网页上的文件(未测试)
- HtmlUnit基础
- htmlunit 示例
- java htmlunit
- htmlunit学习
- htmlunit示例
- AT&T学习笔记汇编之数学处理
- Android TV 开发笔记一:环境搭建
- Set集合重复元素的判断
- AT&T汇编学习笔记之数据类型
- AT&T汇编学习笔记之字符串
- HtmlUnit测试入门
- 提高MySQL数据库性能
- AT&T学习笔记汇编之调用汇编库
- 第五周程序阅读(6)
- 黑马程序员——Collections、Arrays、增强for、可变参数、静态导入
- AT&T学习笔记汇编之call
- Ihtmldocument2接口的使用
- 什么是ORB
- jQuery Mobile学习笔记(十)——扩展框架