selenium 学习笔记 ---新手学习记录(6) 问题总结(java)
1.查看网页的cookie信息
//查看cookie 登录后的cookie
Set<Cookie> setcoke= driver.manage().getCookies();
for(Cookie str: setcoke){
System.out.println("cookie="+str);
}
for(Iterator<Cookie> iterator = setcoke.iterator();iterator.hasNext();){
System.out.print(iterator.next()+" ******");
}
2.测试数据参数化,数据库,批量化,同时set集合的读取和使用
//测试数据参数化测试
@Test(enabled=true,dataProvider="datas",timeOut=120000,dataProviderClass=dlTest.class)
public void dlTest_6(String users,String pass) throws InterruptedException{
driver=bmm.Login(users, pass, 0);
System.out.println("users="+users);
//查看cookie 登录后的cookie
Set<Cookie> setcoke= driver.manage().getCookies();
for(Cookie str: setcoke){
System.out.println("cookie="+str);
}
/* //查看cookie
for(Iterator<Cookie> iterator = setcoke.iterator();iterator.hasNext();){
System.out.print(iterator.next()+" ******");
} */
String str_dlemail1=driver.findElement(By.xpath("html/body/div[1]/div/div[2]/div")).getText();
System.out.println("dlTest_6实际结果:"+str_dlemail1);
Assert.assertEquals("登录成功", str_dlemail1);
}
//登录数据等同记事本
@DataProvider
public static Object[][] datas(){
return new Object[][]{
new Object[]{"test@qq.com","123456"},
new Object[]{"test1@qq.com","123456"},
};
}
3.invocationCount代表执行次数,timeOut超时时间设置
@Test(enabled = false,invocationCount=1)
4.等待元素加载完成后,在继续执行。
WebDriverWait wait = new WebDriverWait(driver,100);
wait.until(new ExpectedCondition<WebElement>(){
@Override
public WebElement apply(WebDriver d) {
return d.findElement(By.xpath("html/body/div[1]/div/div/div/form/table/tbody/tr[12]/td[2]/div/div/img"));
}});
封装成函数后为:
/**
* 等待元素出现后再执行
* 也就是等待元素对象加载完成
* driver驱动,By对象
* return 元素对象
* */
public WebElement ElementFinish(WebDriver driver,By by ){
WebDriverWait wait = new WebDriverWait(driver,100);
return wait.until(new ExpectedCondition<WebElement>(){
@Override
public WebElement apply(WebDriver d) {
return d.findElement(by);
}});
}
5.操作js代码
//控制滚动条 下拉到最后 把滚动条下拉到最后,
String high="scroll(0,10000);";
((JavascriptExecutor)driver).executeScript(high);
6.判断元素是否存在
WebElement linkUsername = driver.findElement(By.xpath("//a[contains(text(),"+username+")]"));
selenium 学习笔记 ---新手学习记录(6) 问题总结(java)的更多相关文章
- selenium 学习笔记 ---新手学习记录(1) 问题总结
说明:每次学习各种语言时,环境搭建访问国外网址最头疼了,现在只要是工具下载好放到自己网盘,可以随时用. 1.首先工具准备,selenium需要用到的 下载地址 访问密码 ff8f 2.我选择的语言时j ...
- selenium 学习笔记 ---新手学习记录(9) 问题总结(java)
1.百度搜索目标--实例 boolean flag; //点击次数 int shcs=3; int i=0; //窗口焦点控制 String detailWindowHandle = null; // ...
- selenium 学习笔记 ---新手学习记录(2) 问题总结
今天研究了下ie.chrome.firefox浏览器执行脚本 1.首先firefox下执行时,我是安装在d盘了,所以要更改路径 //如果火狐浏览器没有默认安装在C盘,需要制定其路径 System.se ...
- selenium 学习笔记 ---新手学习记录(10) 问题总结(java)--poi--excel 操作
1.当我使用poi想要操作xlsx时,报错,解决方法下载xmlbeans-2.6.0.jar架包,引入即可.点我下载 https://yunpan.cn/cSdVqp6e4v6Jk 访问密码 2c5 ...
- selenium 学习笔记 ---新手学习记录(8) 问题总结(java)
1.获取执行js代码后的返回值 //获取滚动距离 String jl="return $('#chapterul li').height();"; Long jlhq=(Long) ...
- selenium 学习笔记 ---新手学习记录(7) 问题总结(java)
1.想要获取固定ul下所有li的个数 如下图: //获取ul下li的个数 List<WebElement> elements = driver.findElement(By.id(&qu ...
- selenium 学习笔记 ---新手学习记录(5) 问题总结(java)
1.今天遇到个奇葩问题,iframe有两个id相同的(如下图) 使用driver.switchTo().frame(“frmLinkPage1”);这个无法使用了. 后来改用driver.switch ...
- selenium 学习笔记 ---新手学习记录(4) 问题总结(java)-autoit3脚本使用
1.安装autoit3 下载地址:点我下载 (提取码:9633) 提取码 下载完成后,一直下一步即可 2.上传头像使用脚本 代码如下: ControlFocus("打开",&quo ...
- selenium 学习笔记 ---新手学习记录(3) 问题总结(java)
1.验证码简单处理 /** * 验证码等待输入函数 * */ private void ZcYzm(WebDriver driver){ boolean flag=false; while(flag= ...
随机推荐
- new、delete与malloc、free的详解
内容清单: 1. C语言中的函数malloc和free 2. C++中的运算符new和delete 3. new/delete与malloc/free之间的联系和区别 4. C/C++程序的内 ...
- Bootstrap的aria-label与aria-labelledby
aria-label: 正常情况下,form表单的input组件都有对应的label,当input组件获取到焦点时,屏幕阅读器会读出相应label里的文本. 但是如果没有给输入框设置label时,当其 ...
- JavaScript之充实文档的内容
1.我们在平时的开发中会碰到一些缩略语如:XML,HTML,API等专业术语:为了能使用户,更好的了解术语的意思,我们通常会给<abbr></abbr>标签加一个title属性 ...
- param
页面之间值传递用param作为参数,提高网站安全性
- English - because of,due to ,thanks to ,owing to ,as a result of ,on account of解析
because of,due to ,thanks to ,owing to ,as a result of ,on account of 等都可以用来表示原因,但其用法却各有不同.下面就其用法分述如 ...
- 玩转kindle paperwhite: 如何越狱,安装强大外挂软件koreader
NOTICE 1: 在更新kpvbooklet和使用最新版本的koreader(v2013.03-211)时候,会出现pdf文档无法重排的错误.亲测. 如果你是使用的最新版本koreader且出现上述 ...
- JSONObject put accumulate element 方法区别-------java中
1.public Object put (Object key, Object value) 将value映射到key下.如果此JSONObject对象之前存在一个value在这个key下,当前的va ...
- Scala学习之延迟绑定
package com.swust.example object TraitDemo2 extends App{ //抽象类 abstract class Writer { def writeMess ...
- hdu 4455 Substrings(找规律&DP)
Substrings Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- java.el.PropertyNotFoundException解决方法
今天在开发中遇到了java.el.PropertyNotFoundException异常,检查JSP页面.Action.Bean.都没有发现错误 在网上搜了一下可能是我的bean不是一个标准的bean ...