文档章节

小代码改进

木子木
 木子木
发布于 2014/06/05 12:16
字数 352
阅读 16
收藏 0
 package MonitorTest;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;
public class MonitorTest_improve {
 public static void main(String[] args) throws InterruptedException, IOException{
  //存储监控 名称的文件地址
  String fileUrl="D:\\bukejian\\tmp.txt";
  //访问地址
  String url=;
  ArrayList<String> list = new ArrayList<String>();
  String encoding="GBK";
  
  File file = new File(fileUrl);
  if(file.isFile() && file.exists()){
            InputStreamReader read = new InputStreamReader(
            new FileInputStream(file),encoding);
            BufferedReader bufferedReader = new BufferedReader(read);
            String lineTxt = null;
            while((lineTxt = bufferedReader.readLine()) != null){  
             list.add(lineTxt);
            }
            read.close();
         }else{
          System.out.println("No exist");
         }       
  
  System.setProperty("webdriver.firefox.bin", "D:/bukejian/Mozilla Firefox/firefox.exe");
  WebDriver dr = new FirefoxDriver(); 
  dr.get(url);
  WebElement submit=(new WebDriverWait(dr,10)).until(new ExpectedCondition<WebElement>(){
      @Override
      public WebElement apply(WebDriver d){
       return d.findElement(By.cssSelector("input[type=\"submit\"]"));
      }
     });
  dr.findElement(By.name("login_username")).clear();
  dr.findElement(By.name("login_username")).sendKeys("bukejian");
  dr.findElement(By.name("login_password")).clear();
  dr.findElement(By.name("login_password")).sendKeys("bukejian");
  submit.click();
  
  int j=0;
  for(String a :list){
   (new WebDriverWait(dr,10)).until(new ExpectedCondition<WebElement>(){
       @Override
       public WebElement apply(WebDriver d){
        return d.findElement(By.linkText("Add"));
       }
      }).click();
   
   WebElement select=(new WebDriverWait(dr,10)).until(new ExpectedCondition<WebElement>(){
       @Override
       public WebElement apply(WebDriver d){
        return d.findElement(By.name("type_select"));
       }
      });
   new Select(select).selectByVisibleText("Graph");
   
   WebElement graph_id=(new WebDriverWait(dr,10)).until(new ExpectedCondition<WebElement>(){
       @Override
       public WebElement apply(WebDriver d){
        return d.findElement(By.id("local_graph_id"));
       }
      });
      new Select(graph_id).selectByVisibleText(a);
      
      (new WebDriverWait(dr,10)).until(new ExpectedCondition<WebElement>(){
       @Override
       public WebElement apply(WebDriver d){
        return d.findElement(By.cssSelector("input[type=\"button\"]"));
       }
      }).click();
      
      
      //dr.findElement(By.cssSelector("input[type=\"submit\"]")).click();//提交
          
      System.out.println(j+"="+a);
      j++;    
  }
  dr.close();  
 }
}

全加上了 等待10s,用取消操作验证了下倒是不会超时报错了

Exception in thread "main" org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"bukejian","selector":"bukejian"}

之前会报这种错误,应该是没找到元素超时了,这次所有元素都最多等待10s应该不会报错了吧

© 著作权归作者所有

共有 人打赏支持
木子木

木子木

粉丝 5
博文 37
码字总数 7425
作品 0
朝阳
私信 提问
JEECG 3.8 宅男优化版本发布,1024 程序员节宅男节日快乐

JEECG 3.8 版本发布,系统全面升级,重构上传组件、优化代码生成器机制! 导读 ⊙平台性能优化,系统更稳定,速度闪电般提升 ⊙系统上传组件全面重构,使用plupload组件,解决flash的适配问题...

Jeecg
2018/10/24
2.4K
0
SpringSide 3.0.2 发布

新版本总体改进如下: 总体改进: 从头完善Wiki文档.(finish) 重新提供All in One 版本.(finish) 编写quickstart.bat实现傻瓜式初始化流程,见QuickStart 3.0.2。(finish) 整理Checkstyle/Pm...

oschina
2008/09/26
1K
0
POJ 1276 Cash Machine 解答

题目详见: http://poj.org/problem?id=1276 这道题与POJ 1014同属一类题, 区别在于POJ 1014的解是求恰好等于容量的情况, 而这道题较为常规, 同时这道题的数据较大, 套用我在博客http://blog...

fjie
2014/01/13
0
0
PhpStorm 10 发布,PHP 7 和 PHPUnit 5 支持

PhpStorm 10 正式版发布下载,此版本最主要的是 PHP 语言支持,编辑体验改进,调试器改进,代码分析改进和其他强大的新特性。 改进列表: PHP 语言和编辑体验:PHP 7支持 (including PHP 7 c...

oschina
2015/11/03
19.1K
46
WebStorm 2018.2 EAP 发布,改进 JSON 支持

WebStorm 2018.2 EAP 发布了。WebStorm 是 JetBrains 推出的一款商业的 JavaScript 开发工具。 今天发布的第一个 EAP 版本(182.2371.25),自从三月份的上一个主要版本以来,已经实现了超过...

达尔文
2018/05/18
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

第1章

背景:因为最近在考教师资格证,考的是计算机学科,所以学科考的是:信息技术学科知识与教学能力;因此图书馆借了一本书,把最基本的知识看一遍,为之后的笔试和面试做充足的准备。 大学计算...

怪咖先生forever
31分钟前
1
0
element-ui之el-collapse-transition(折叠展开动画)源码解析学习

项目中发现同事使用了element-ui的el-collapse-transition来做折叠展开效果,打开源码看了下发现挺有意思,来解析学习一番。 el-collapse-transition的引入方式 // fade/zoom 等import 'e...

学霸猫
52分钟前
1
0
解释器模式_实战

前言 解释器模式是什么?这个设计模式其实比较冷门,不太会解释,用例子说明把。解释器模式一般用在sql,xml,json解析等场景。比如说你有一个json对象,你要获取这个对象中任意一个节点的值。...

grace_233
今天
6
0
告别2018

今天中午从喵喵家回来之后,倒头就睡到下午4点了。可能是之前透支的身体,在我放松下来后,开始觉得疲惫了,所以最近估计会进入嗜睡期。醒来之后,拿了包花生,开了瓶低糖菊花茶,听着网易云...

七木网络科技
今天
4
0
MySql数据库分表分区实践

1. 背景 —— 公司物联网项目 海量设备通过物联网服务接入云端,设备每30s上报一次自身数据(以下称为动态数据)。 物联网服务将设备上报的数据转发给数据处理网关,由数据入库网关执行批量入...

吴伟祥
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部