【佳乐Selenium】DAY-1 登录,初识XPath
之所以开始使用Selenium是因为在我们的UI在一年内进行第三次变革后
QTP无法识别了
所以开始学习Selenium
而且在2014年我收获了一个很好的老师
小何老师~~
有人带着进步真的是神速的
以下总结的是小何老师指点我的知识
我们的项目只支持chrome浏览器
DAY-1
开始录制登录页面,结果发现登录按钮无法识别,百度出来结果是className不能包含空格 而我们的项目几乎全是。。。
一、
Compound class names are not supported
问题分析
WerbDriver中by.className() 不支持含有空格的class名称,第1行代码中,className"btn btn-primary"中包含空格,引发报错。
解决方案
使用通配符,修改className,使其不包含空格
更换其他属性识别
小何老师:使用xpath定位
在按钮上右键审查元素-点击定位到的代码处-右键Copy XPath
===============================================
练习FireFox 的Selenium IDE从网上找了段代码
public class TestHello {
public static void main(String[] args) {
//如果火狐浏览器没有默认安装在C盘,需要制定其路径
//System.setProperty("webdriver.firefox.bin", "D:/Program Files/Mozilla firefox/firefox.exe");
WebDriver driver = new FirefoxDriver();
driver.get("http://www.baidu.com/");
driver.manage().window().maximize();
WebElement txtbox = driver.findElement(By.name("wd"));
txtbox.sendKeys("Glen");
WebElement btn = driver.findElement(By.id("su"));
btn.click();
driver.close();
}
}
===============================================
还发生过一个小插曲,就是我从网上找了段代码 反正也能用 但是何老师说是Selenium1的写法
public class Login {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:/chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://IP:端口/login.shtml");
driver.manage().window().maximize();
WebElement username = driver.findElement(By.name(""));
username.sendKeys("");
密码同username
WebElement btnLogin = driver.findElement(By.xpath(""));
btnLogin.click();
// driver.close();
}
}
感谢分享,不过发一个帖子里是不是看起来可以方便点:lol en,学习 andyclock 发表于 2015-3-3 16:13
感谢分享,不过发一个帖子里是不是看起来可以方便点
总结帖在这里
http://bbs.51testing.com/thread-1046670-1-1.html
页:
[1]