美文网首页
maven+selenium+EXCEL+IDEA

maven+selenium+EXCEL+IDEA

作者: 小眼睛的露鹿酱 | 来源:发表于2020-05-22 08:37 被阅读0次

一 下载安装MAVEN

  1. 下载maven:http://maven.apache.org/download.cgi
  1. 解压到Apache的文件夹里面:D:\Apache\apache-maven-3.6.3


  2. 配置自己的maven的路径
    此电脑>>属性>>高级系统设置>>环境变量>>系统变量

系统变量中新建:M2_HOME = D:\Apache\apache-maven-3.6.3
找到Path 然后新增:%M2_HOME%\bin


  1. 验证MAVEN是否配置成功
    进入 terminal,输入 mvn -v 显示


  2. 修改MAVEN仓库地址
    境外的仓库太慢, 境内的阿里仓库访问快
    打开conf文件中的setting.xml



    找到Mirrors找个条目



    修改里面的内容
<mirror>
//该镜像的id
<id>nexus-aliyun</id>
//该镜像用来取代的远程仓库,central是中央仓库的id
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
//该镜像的仓库地址,这里是用的阿里的仓库
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

修改后:


  1. 修改本地仓库位置
    找到 localRespository 条目, 在其上方添加 自己设置的仓库位置
<localRepository>D:\Apache\apache-maven-3.6.3\mavenLocalRespository</localRepository>

显示如下:


检测上述是否修改成功:


本地仓库也在下载,会多一些文件夹

二 在IDEA中创建MAVEN项目

  1. 打开IDEA,点击“create new project”
  1. 选择Maven 的quick start 模板来初始化Project


  2. 填写Maven坐标, 点击 next
    Group:demo
    artifactid:demo1


  3. 选自己的本地刚刚安装的maven,点击next


  4. 输入项目名称 点击finish


  5. 项目进入



    进入后 , 会显示正在安装maven需要的依赖, 请稍等安装

  1. pom中添加需要的依赖
 <dependencies>

        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.14.3</version>
            <scope>test</scope>
        </dependency>

   

    </dependencies>

IDEA会自动去加载
发现没有找到source文件夹(也就是写代码的src文件), 可以自己添加下:


创建自己的文件夹 ,然后刷新 就可以看到idea下面的source文件夹

  1. 下载需要的driver
    查看自己的浏览器 然后去对应的下载需要的dirver


  2. 更新pom文件为:
<dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>3.141.59</version>
    </dependency>
    

更新好pom后, idea会自动去加载

  1. 码个小demo
System.setProperty("webdriver.chrome.driver","E:\\program\\itManageSysCheck\\driver\\chromedriver.exe");
        this.driver = new ChromeDriver();
        driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS) ;
        driver.navigate().to("http://www.baidu.com" );

**** 注意两件事:
1). 遇到页面跳转到新的窗口,一定要定位到新的窗口

String currentWin = driver.getWindowHandle();
        Set<String> Windows =  driver.getWindowHandles();
        List<String> allWindows = new ArrayList<String>(Windows);
        int j=0;
        for (int i=0;i<allWindows.size();i++){
            if (!allWindows.get(i).equals(currentWin)){
                j=i;
            }
        }
        driver.switchTo().window(allWindows.get(j));

2). 仔细看是否页面存在 iframe, 这种的需要switch to iframe 然后再定位操作


  driver.switchTo().frame("hauto");

三 java 处理EXCEL

添加maven依赖的包:

</dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.poi/poi   EXCEl处理 -->
    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi</artifactId>
      <version>3.17</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml EXCEL处理-->
    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi-ooxml</artifactId>
      <version>3.17</version>
    </dependency>

支持.xls和.xlsx两种 格式
excel文件 ---- Workbook
Sheet ---- Sheet
Row ---- Row
Cell ---- Cell

如果文件格式是.xls那么使用 class: XSSFWorkbook, XSSFSheet,XSSFRow,XSSFCell

如果文件格式是.xlsx那么使用 class:HSSFWorkbook, HSSFSheet, HSSFRow, and HSSFCell

POI的模式:
先创建 Workbook, 再进入对应的Sheet, 然后遍历每一行Row, 进入到该行的某个Cell, Cell先setType, 再读出Value

ArrayList<sysNum> data = new ArrayList<>();
        FileInputStream file = new FileInputStream(new File(filePath));
        
//创建workbook
        Workbook workbook = new XSSFWorkbook(file);
        Sheet sheet = workbook.getSheet("SystemCheck");
//遍历每一行
        for (Row row : sheet) {
            int colums = row.getPhysicalNumberOfCells();
            System.out.println(" each row contains cell: " + colums);
//进入到每一个Cell      
      String sysName = row.getCell(0).getStringCellValue();
            Enum getNum = row.getCell(7).getCellTypeEnum();
//设置Type,读取Value
            row.getCell(7).setCellType(CellType.NUMERIC);
            double nn = row.getCell(7).getNumericCellValue();

            sysNum sysdata = new sysNum(sysName,nn);
            data.add(sysdata);

相关文章

网友评论

      本文标题:maven+selenium+EXCEL+IDEA

      本文链接:https://www.haomeiwen.com/subject/ivuvohtx.html