Selenium-java(XML-元素管理篇)
来源:互联网 发布:2016年鞍山中考大数据 编辑:程序博客网 时间:2024/05/29 09:42
Selenium-java(XML-元素管理篇)
有效的对页面元素管理有利于脚本的维护,避免修改代码引起不必要的麻烦。这里我使用到了xml对元素的管理。
<?xml version="1.0" encoding="UTF-8"?><!--登录页面元素--><LoginEleData> <!--账号输入框--> <property name="name_input" type="id" value="textfield-1009-inputEl"/> <!--密码输入框--> <property name="pwd_input" type="id" value="textfield-1010-inputEl"/> <!--保存密码勾选框--> <property name="save_pwd" type="id" value="checkbox-1013-inputEl"/> <!--登录按钮--> <property name="login_button" type="id" value="loginBtn-btnEl"/></LoginEleData>
这是一个举例的xml文件,我把各个元素信息写入其中。开始解析首先需要导入dom4j包。在maven项目pom文件中导入jar包。
<!-- https://mvnrepository.com/artifact/dom4j/dom4j --> <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version> </dependency> <dependency> <groupId>xml-apis</groupId> <artifactId>xml-apis</artifactId> <version>1.4.01</version> </dependency>
开始封装获得元素方法了。
import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.io.SAXReader;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.net.URL;public class Dom4j { private String file; public Document document; private InputStream input = null; private Map<String,String[]> eles; public Dom4j(String file) { this.file = file; ClassLoader classLoader = Dom4j.class.getClassLoader(); URL resource = classLoader.getResource(file); String path = resource.getPath(); try { input = new FileInputStream(path); } catch (FileNotFoundException e) { e.printStackTrace(); System.out.println("打开文件错误"); } // 创建saxReader对象 SAXReader reader = new SAXReader(); // 通过read方法读取一个文件 转换成Document对象 try { document = reader.read(input); } catch (DocumentException e) { e.printStackTrace(); } } /** * 提供关闭文件方法 */ public void close() { try { input.close(); } catch (IOException e) { e.printStackTrace(); System.out.println("关闭文件错误"); } } /** *提供一个从xml文件获取ele数组的方法 * @return Map集合 通过name获取数组values * 数组第一位为类型 第二位为类型值 */ private Map<String,String[]> setele() { Iterator<Element> elements; Element property = null; eles = new HashMap<String, String[]>(); //获取根节点元素对象 Element node = super.document.getRootElement(); //获得一个element列表迭代器 elements = node.elements("property").iterator(); while (elements.hasNext()) { property = elements.next(); String[] ele =new String[2]; ele[0] = property.attributeValue("type"); ele[1] = property.attributeValue("value"); eles.put(property.attributeValue("name"),ele); } close(); return eles; } /** * 提供一个获取element元素集合 * @return Map集合 通过name获取数组values * 数组第一位为类型 第二位为类型值 */ public Map<String,String[]> getele() { return this.setele(); }
然后让我们开始获取页面的元素了。
0 0
- Selenium-java(XML-元素管理篇)
- Selenium-java-(Excel-元素管理篇)
- selenium+java自动化测试框架之元素管理篇
- selenium+java自动化测试框架之元素管理篇(yaml)
- selenium+java自动化测试框架之元素管理篇(yaml)
- selenium+java自动化测试框架之元素管理篇(yaml)
- selenium元素定位(Java)
- selenium测试框架篇,页面对象和元素对象的管理
- java selenium webdriver实战 页面元素定位
- java selenium (五) 元素定位大全
- java selenium (十四) 处理Iframe 中的元素
- java selenium (五) 元素定位大全
- Selenium-java-XML启动用例类-简单1
- python+selenium定位web元素篇
- Java中如何利用Selenium获取元素分析网页内容
- selenium-java-Firefox 特殊异常:界面找不到元素
- selenium用java 选择倒数第二个元素
- java+selenium 截取某一元素的图片的方法
- easyUI的使用待修改
- 编写web测试用例
- spring读取xml生成BeanDefinion时的扩展点
- live templates语法
- 前后端分离的交互式开发模式
- Selenium-java(XML-元素管理篇)
- Android面试题-Android源码编译实现静默安装和静默偷拍
- Vijos P1772 巧妙填数【进制+置换】
- [李景山php] 深入理解PHP内核[读书笔记]--第三章:变量及数据类型--变量的结构和类型
- [svc]免费ssl实践
- 用户、组或角色 在当前数据库中已存在
- 初识MongoDB一
- C#159课的主要内容
- selenium常用资源的阿里镜像链接