TA的每日心情 | 开心 2024-10-4 10:34 |
---|
签到天数: 1208 天 连续签到: 1 天 [LV.10]测试总司令
|
之所以开始使用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();
}
}
|
|