1.验证码简单处理

 /**
* 验证码等待输入函数
* */
private void ZcYzm(WebDriver driver){
boolean flag=false;
while(flag==false){
//获取验证码文本框的值
WebElement zc_yzm=driver.findElement(By.name("ValidationText"));
String strzym=zc_yzm.getAttribute("value");
//System.out.println("ss=="+strzym);
//注册码不能为空
if(strzym == null||"".equals(strzym)){
//System.out.println("sssss");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
else
{
//验证码长度
int zym_len=strzym.length();
if(zym_len >=6){
System.out.println("您输入的验证码为:"+strzym);
flag=true;
}
} }
}

验证码等待输入(一次性的)

2.验证页面元素是否存在

 /**
* 验证元素是否存在
* */
boolean isElementExsit(WebDriver driver, By locator) {
boolean flag = false;
try {
WebElement element=driver.findElement(locator);
flag=null!=element;
} catch (NoSuchElementException e) {
System.out.println("Element:" + locator.toString()
+ " is not exsit!");
}
return flag;
}

验证元素代码

3.frame和iframe操作

 //刷新右侧frame后,从新进入
driver.switchTo().frame("frmLinkPage2");

iframe操作

退出iframe操作

 //退出iframe
driver.switchTo().defaultContent();

退出iframe

4.随机选择下列菜单内容

 //所学专业1-4
int sxzy=rand.nextInt(3)+1;
System.out.println("所学专业::"+sxzy);
new Select(driver.findElement(By.id("profession"))).selectByIndex(sxzy);

下拉菜单随机选择

5.随机输入内容

//随机数
 Random rand=new Random();

   //身份证号
String[] arraysf={"370802197703138738","140602198703258597","14103019760225449X","140426197508043799"};
int sfzh=rand.nextInt(3);
System.out.println("性别::"+sfzh+"身份证:"+arraysf[sfzh]);

随机输入内容,自定义好内容

6.获取当前秒数

  //获取当前秒数
Calendar calendar=Calendar.getInstance();
int seconds=calendar.get(Calendar.SECOND);

获取秒数

7.获取窗口焦点

 /**
* 获取新的窗口焦点,比如刷新什么的
* 新开窗口焦点获取函数
* */
private int GainWindowFocus(WebDriver driver){
int i=0;
for(String winHandle : driver.getWindowHandles()){
System.out.println("+++" + winHandle);
driver.switchTo().window(winHandle);
i++;
}
return i;
}

获取窗口焦点

8.读取文件写入记事本

  /**
* 写入文件
* 记事本登录账号
* */
private void Write_notepad(String name,String pass){
try{
String datas = name+" "+pass; File file =new File("d:\\17xuezh\\dl.txt"); //if file doesnt exists, then create it
//如果文件不存在,则创建它
if(!file.exists()){
file.createNewFile();
} //true = append file true=追加文本内容
FileWriter fileWritter = new FileWriter(file.getPath(),true);
BufferedWriter bufferWritter = new BufferedWriter(fileWritter);
bufferWritter.write(datas);
bufferWritter.newLine();
bufferWritter.close();
System.out.println("Done ,完成!"); }
catch(IOException e)
{
e.printStackTrace();
}
}

读取文件写入记事本

selenium 学习笔记 ---新手学习记录(3) 问题总结(java)的更多相关文章

  1. selenium 学习笔记 ---新手学习记录(1) 问题总结

    说明:每次学习各种语言时,环境搭建访问国外网址最头疼了,现在只要是工具下载好放到自己网盘,可以随时用. 1.首先工具准备,selenium需要用到的 下载地址 访问密码 ff8f 2.我选择的语言时j ...

  2. selenium 学习笔记 ---新手学习记录(9) 问题总结(java)

    1.百度搜索目标--实例 boolean flag; //点击次数 int shcs=3; int i=0; //窗口焦点控制 String detailWindowHandle = null; // ...

  3. selenium 学习笔记 ---新手学习记录(2) 问题总结

    今天研究了下ie.chrome.firefox浏览器执行脚本 1.首先firefox下执行时,我是安装在d盘了,所以要更改路径 //如果火狐浏览器没有默认安装在C盘,需要制定其路径 System.se ...

  4. selenium 学习笔记 ---新手学习记录(10) 问题总结(java)--poi--excel 操作

    1.当我使用poi想要操作xlsx时,报错,解决方法下载xmlbeans-2.6.0.jar架包,引入即可.点我下载 https://yunpan.cn/cSdVqp6e4v6Jk  访问密码 2c5 ...

  5. selenium 学习笔记 ---新手学习记录(8) 问题总结(java)

    1.获取执行js代码后的返回值 //获取滚动距离 String jl="return $('#chapterul li').height();"; Long jlhq=(Long) ...

  6. selenium 学习笔记 ---新手学习记录(7) 问题总结(java)

    1.想要获取固定ul下所有li的个数  如下图: //获取ul下li的个数 List<WebElement> elements = driver.findElement(By.id(&qu ...

  7. selenium 学习笔记 ---新手学习记录(6) 问题总结(java)

    1.查看网页的cookie信息 //查看cookie 登录后的cookie Set<Cookie> setcoke= driver.manage().getCookies(); for(C ...

  8. selenium 学习笔记 ---新手学习记录(5) 问题总结(java)

    1.今天遇到个奇葩问题,iframe有两个id相同的(如下图) 使用driver.switchTo().frame(“frmLinkPage1”);这个无法使用了. 后来改用driver.switch ...

  9. selenium 学习笔记 ---新手学习记录(4) 问题总结(java)-autoit3脚本使用

    1.安装autoit3 下载地址:点我下载 (提取码:9633) 提取码 下载完成后,一直下一步即可 2.上传头像使用脚本 代码如下: ControlFocus("打开",&quo ...

随机推荐

  1. 一步一步学android之布局管理器——RelativeLayout

    今天开始学习RelativeLayout(相对布局),相对布局在平时布局的时候用的较多,因为Android适配方面的原因.相对布局可以控制组件摆放的位置(放在任一组件的上下左右等位置),下面来看看类的 ...

  2. openstack之nova启动实例过程

    概述: 启动一个实例包含以下步骤: API server:处理用户请求并转发至cloud controller cloud controller:处理计算节点.网络控制.api server 以及sc ...

  3. dataset 用法(1)

    DataSet是表和列结构在内存中的表示方式,DataSet支持多表.表间关系.数据约束等,和关系数据库的模型基本一致.(本质上是微型的数据库.包含一组DataTable对象和DataTable之间的 ...

  4. 【转】在SQL Server 2008中SA密码丢失了怎么办?

    sql server 2008的sa用户莫名其妙就登陆不进去了.提示如下: 以上提示就表明是密码错误,但密码我可是记得牢牢的,也许是系统被黑的原因吧.一直以来我的Windows身份验证就用不起,以下方 ...

  5. iOS内购的订单对应和补单

    内购的关键类: 1.SKPayment(SKMutablePayment可将自己的参数一对一与苹果产生的payment对应起来) 2.TransactionObserver:交易状态更新时执行此方法, ...

  6. WCF编写时候的测试

    1右击WCF创建到使用到发布这篇文章中的类库项目中的接口类实现文件添加断点 2右击WCF创建到使用到发布这篇文章中的WCF服务网站设为启动项并允许 3右击WCF创建到使用到发布这篇文章中的WPF项目调 ...

  7. InnoDB的配置

    http://www.cnblogs.com/szx_rencaijob/archive/2010/04/28/1723211.html 推荐InnoDB的配置(1G内存情况,主要运行mysql服务器 ...

  8. 学习PS必须弄懂的专业术语

    在学习PS的过程中,我们经常会遇到一些专业术语,下面我们来对一些常用的.比较难理解的术语进行简单讲解. 像素:像素是构成图像的最基本元素,它实际上是一个个独立的小方格,每个像素都能记录它所在的位置和颜 ...

  9. javascript小练习-Firefox和低版本chrome下必须采用document方法获取到元素。

    pxpx;background-color: aqua;display: none;} </style></head><body><input type=&q ...

  10. "笨方法学python"

    <笨方法学python>.感觉里面的方法还可以.新手可以看看... 本书可以:教会你编程新手三种最重要的技能:读和写.注重细节.发现不同.