package sun;

import java.io.File;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class XmlLoginDemo
{
  private static String username;
  private static String password;
  public static void main(String[] args)//throws Exception
  {
    //调用OpenBS()方法
    new XmlLoginDemo().OpenBS();
    System.out.print("开始登陆:"+"\n"+"用户名:"+username+"\n"+"密 码:"+password+"\n"+"登陆成功!");
  }
  public void OpenBS()
  {
    //配置本地firefox浏览器安装路径
    System.setProperty("webdriver.firefox.bin", "D:\\FireFox\\firefox.exe");
    //调用ReadXml()方法
    new XmlLoginDemo().ReadXml();
    WebDriver driver=new FirefoxDriver();
    //输入URL地址
    driver.get("http://ips2.ips.cn");
    //输入用户和密码并点击登陆按钮
    WebElement login_user = driver.findElement(By.id("username"));
    login_user.sendKeys(username);
    WebElement login_pwd = driver.findElement(By.id("password"));
    login_pwd.sendKeys(password);
    WebElement login_button=driver.findElement(By.id("Submit"));
    login_button.click();
    //处理异常
    try{
      Thread.sleep(5000);
    }catch(InterruptedException e){
      e.printStackTrace();
    }
  }
  public void ReadXml()
  {
    String pathProSys=System.getProperty("user.dir");
    //XML文件相对路径
    String pathProUser="\\data\\user.xml";
    //XML文件绝对路径
    String path=pathProSys+pathProUser;
    File f=new File(path);
    SAXReader reader=new SAXReader();
    try {
      Document doc=reader.read(f);
      Element root=doc.getRootElement();
      username=root.elementText("username");
      password=root.elementText("password");
    } catch (DocumentException e) {
      e.printStackTrace();
    }
  }
}

selenium+Eclipse+testNG读取XML内容登陆系统的更多相关文章

  1. 通过w3c方式 读取xml内容

    /** * 通过w3c方式 读取xml内容 * @param lablenames 要读取的节点名称 * @param file_path_name 文件绝对路径 * @return */ publi ...

  2. java如果读取xml内容

    本文介绍的是使用dom4j方式读取,如需要其他方式可自行百度. 1.首先导入dom4j的jar包:http://www.dom4j.org/dom4j-1.6.1/ 2.准备xml文件 <?xm ...

  3. 自动化测试框架selenium+java+TestNG——读取csv文件

    读取csv文件可以直接读取,也可以使用javacsv.jar,后者比较简单,这个也可以变相认为是对表格的处理,我们可以在表格中做好数据,存储成csv格式的文件,后续对xlsx表格的操作抽个时间再记录下 ...

  4. spring4笔记----UrlResource访问网络资源读取xml内容

    package com.ij34.bean; import java.util.Iterator; import java.util.List; import org.dom4j.Document; ...

  5. (转) 读取xml文件转成List<T>对象的两种方法

    读取xml文件,是项目中经常要用到的,所以就总结一下,最近项目中用到的读取xml文件并且转成List<T>对象的方法,加上自己知道的另一种实现方法. 就以一个简单的xml做例子. xml格 ...

  6. unity Android 打包后读取 xml 文件

    原地址:http://www.cnblogs.com/wuzhang/p/wuzhang20140731.html 问题:    前天在做东西的过程中发现了一个让人很纠结的问题,为什么Unity 程序 ...

  7. jQuery append xmlNode 修改 xml 内容

    jQuery append xmlNode 修改 xml 内容 http://blog.darkthread.net/blogs/darkthreadtw/archive/2009/04/29/jqu ...

  8. 读取xml文件转成List<T>对象的两种方法(附源码)

    读取xml文件转成List<T>对象的两种方法(附源码) 读取xml文件,是项目中经常要用到的,所以就总结一下,最近项目中用到的读取xml文件并且转成List<T>对象的方法, ...

  9. VB 老旧版本维护系列---读取xml某个节点的值

    读取xml某个节点的值 '定义xml字符串内容地址 Dim xmlFileStr As String = "" '定义所需读取节点的名称 Dim readNodeName As S ...

随机推荐

  1. 获取一个Jpanel的父容器有多难

    JDialog parent = (JDialog) this.getParent().getParent().getParent().getParent(); javax.swing.JPanel- ...

  2. SQL SERVER2005事务日志已满 解决方法

    DUMP TRANSACTION 数据库名称 WITH NO_LOG alter database 数据库名称 set recovery simple 3.右键你要压缩的数据库--所有任务--收缩数据 ...

  3. 开源Math.NET基础数学类库使用(02)矩阵向量计算

    原文:[原创]开源Math.NET基础数学类库使用(02)矩阵向量计算 开源Math.NET基础数学类库使用系列文章总目录:   1.开源.NET基础数学计算组件Math.NET(一)综合介绍    ...

  4. OA项目设计的能力③

    1.然后来了一个,写在我们的主要要求之一,有回波数据还需要添加的方法,我们需要知道,事实上,页被传递id演出id通讯实体name,所以想要回显就是须要得到privilegeIds,假设像上一篇在jsp ...

  5. CodeCounter代码统计

    今天一天写的,困死了 开发环境:VS2012 + WIN8-x64, MFC CSDN下载链接:http://download.csdn.net/detail/npu_wy/7405577 百度云下载 ...

  6. oracle设备

    # Oracle Environment export ORACLE_BASE=/opt/oracle export ORACLE_HOME=/opt/oracle/product/11gR2/db ...

  7. Linux核心regulator建筑和准备

    电源引入的物种 (百度百科)LDO这是low dropout regulator,这意味着低压差线性稳压器.它相比于传统的线性调节器.传统的线性稳压器.例如78xx系列芯片需要输入电压比输出电压高2v ...

  8. HDU 5012 Dice (BFS)

    事实上是非常水的一道bfs,用字符串表示每一个状态,map判重就ok了. 题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=5012 #include&l ...

  9. datatable1.9 与datatable1.10以数据差异

    我还探讨datatable1.10新用途,如果在下面的代码中的错误,欢迎.. 1.10与1.9解释官方网站之间的差异:http://www.datatables.net/upgrade/1.10 看代 ...

  10. Java使用串行编程操作继电器

    首先,我们必须建立一个良好的环境,那是,jdk并且tomcat.如果它不必须是web装了! 还有就是配置,也就是默认的comm.jar ,javax.comm.properties , win32co ...