selenium webdriver使用的一些小技巧(持续更新中)
2015-04-03 14:35
477 查看
1.开始结束时间只支持控件选择,不支持填写,怎么办?
如下图:
解决方案:
用javaScipt把开始结束时间的reaonly属性去除,然后再输入,举例如下
/**
* 输入开始日期
*
* @param startDate
*/
public void inputStartDate(String startDate) {
String startjs = "document.getElementById('startDate').removeAttribute('readonly');";
((JavascriptExecutor) webdriver).executeScript(startjs);
webdriver.typeById("startDate", startDate);
}
2.因为新需求的加入,导致页面元素路径变更,原本好好的自动化测试用例执行失败
解决方案:
定位元素时,尽可能用id,name等定位,尽可能不用xpath定位。
如果你所测的系统很多元素id或name等等不唯一甚至没有,导致必须要用xpath定位,那么可以和开发同学协商。让他们以后开发新代码时尽可能给元素加上id或name这些属性,并取名唯一。
用id和name定位还有些好处就是:1.可以让你的代码可读性变强,如果在页面源代码中的ID或name属性被友好命名的话。2.xpath定位需要更长的时间来处理,因为浏览器必须运行它的XPath处理器。
3.如何判断浏览器是否加载完毕
如果是简简单单的等一段时间,这不是一个很好的解决方法,一方面浪费了时间,另一方面,我们也无法知道应该等多久,导致我们的测试程序不够稳定。
我常用的一个方法就是判断某个元素是否已加载,当然这个的前提是你的页面没有使用ajax
如下图:
解决方案:
用javaScipt把开始结束时间的reaonly属性去除,然后再输入,举例如下
/**
* 输入开始日期
*
* @param startDate
*/
public void inputStartDate(String startDate) {
String startjs = "document.getElementById('startDate').removeAttribute('readonly');";
((JavascriptExecutor) webdriver).executeScript(startjs);
webdriver.typeById("startDate", startDate);
}
2.因为新需求的加入,导致页面元素路径变更,原本好好的自动化测试用例执行失败
解决方案:
定位元素时,尽可能用id,name等定位,尽可能不用xpath定位。
如果你所测的系统很多元素id或name等等不唯一甚至没有,导致必须要用xpath定位,那么可以和开发同学协商。让他们以后开发新代码时尽可能给元素加上id或name这些属性,并取名唯一。
用id和name定位还有些好处就是:1.可以让你的代码可读性变强,如果在页面源代码中的ID或name属性被友好命名的话。2.xpath定位需要更长的时间来处理,因为浏览器必须运行它的XPath处理器。
3.如何判断浏览器是否加载完毕
如果是简简单单的等一段时间,这不是一个很好的解决方法,一方面浪费了时间,另一方面,我们也无法知道应该等多久,导致我们的测试程序不够稳定。
我常用的一个方法就是判断某个元素是否已加载,当然这个的前提是你的页面没有使用ajax
相关文章推荐
- 转:总结Selenium WebDriver中一些鼠标和键盘事件的使用
- eclipse中的一些快捷键以及使用小技巧(持续更新)
- 总结Selenium WebDriver中一些鼠标和键盘事件的使用
- 总结Selenium WebDriver中一些鼠标和键盘事件的使用
- selenium中使用webdriver的一些心得
- 总结Selenium WebDriver中一些鼠标和键盘事件的使用
- Selenium WebDriver中一些鼠标和键盘事件的使用
- 总结Selenium WebDriver中一些鼠标和键盘事件的使用
- Selenium WebDriver中一些鼠标和键盘事件的使用
- javascript使用中的一些小功能总结(持续更新中)
- Selenium-webdriver—使用Page Object设计模式
- 在Selenium WebDriver中使用By.Xpath快速定位页面元素
- [持续更新]android stduio的一些小技巧
- 在Windows系统下Git使用过程中配到的一些问题汇总(持续更新)
- ruby webdriver 启动chrome浏览器的一些小技巧
- Selenium ide及webDriver使用
- Selenium WebDriver 与 iOS 自动化测试 (做了一些初步的工具对比)
- Selenium WebDriver使用经验杂记
- Selenium WebDriver使用IE浏览器 属性设置
- 前端小技巧(持续更新,一些遇到问题的解决方案)