文档章节

小代码改进

木子木
 木子木
发布于 2014/06/05 12:16
字数 352
阅读 15
收藏 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
朝阳
私信 提问
PhpStorm 10 发布,PHP 7 和 PHPUnit 5 支持

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

oschina
2015/11/03
18.8K
46
Qt Creator 2.4.0 beta 发布

Qt Creator 2.4 beta 发布。该版本包括了许多大大小小的改进,以及一些新功能。 根据Qt博客的Eike Ziller介绍,最诱人的功能/改进无疑是新增的“同步声明及定义”功能。使用该功能,当要改变...

小卒过河
2011/10/21
1K
2
1024程序员节宅男节日快乐 -- JAVA快速开发平台,JEECG 3.8宅男优化版本发布

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

Jeecg
10/24
0
0
JEECG 3.8 宅男优化版本发布,1024 程序员节宅男节日快乐

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

Jeecg
10/24
0
0
SpringSide 3.0.2 发布

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

oschina
2008/09/25
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

windows上类似dnsmasq的软件Dual DHCP DNS Server

官网地址:http://dhcp-dns-server.sourceforge.net/官网定向的下载地址:https://sourceforge.net/projects/dhcp-dns-server/files/ 设置参考地址:http://blog.51cto.com/zhukeqiang/18264......

xueyuse0012
今天
1
0
LinkedHashMap源码解析

前言 HashMap中的元素时无序的,也就是说遍历HashMap的时候,顺序和放入的顺序是不一样的。 如果需要有序的Map,就可以采用LinkedHashMap. LinkedHashMap通过维护一个包含所有元素的双向链表,...

grace_233
今天
3
0
初识flask

文档 0.10.1版本 http://www.pythondoc.com/flask/index.html 1.0.2版本 https://dormousehole.readthedocs.io/en/latest/ 安装flask $ pip3 install flaskCollecting flask Downloading......

yimingkeji
昨天
2
0
Akka系统《sixteen》译

Actor是一个封装状态(state)和行为(behavior)的对象,它们只通过交换消息通信(放入收件人邮箱的邮件)。从某种意义上说,Actor是最严格的面向对象编程形式,但它更适合将他们视为人:在与Act...

woshixin
昨天
1
0
技术工坊|如何开发一款以太坊钱包(深圳)

【好消息!】HiBlock区块链技术工坊已经成功举办了26期,其中北京1期,西安1期,成都2期,上海22期。经常有社区的小伙伴问定期举办技术工坊的除了上海以外,其他城市有没有?现在区块链技术工...

HiBlock
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部