注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

世界的瞭望哨

认识自己 认识世界

 
 
 

日志

 
 

Web自动化框架搭建【下】  

2012-02-27 20:18:50|  分类: 测试技术和工具 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
居然超出博文长度限制==!只好分上下篇。

/**

     * 模拟Hover动作

     * @param locator

     * @note 暂时只支持ChromeDriver

     */

Selenium2.0本身就是原生提供mouseOver这个函数的。但是,至少在2.18.0,这个API还是一个废材。。。

    public void mouseOver(String locator) {

       pause();

       waitForElementPresent(locator);

      

以下这段代码似乎不是很灵光,优化进行中。。。

       // Hover

       WebElement we = BrowserCore.findElement(By.xpath(locator));

       Actions builder = new Actions(BrowserCore);

       builder.moveToElement(we).build().perform();

       return;

    }

   

    /**

     * Flash中点击元素

     * @param flashID     flash本身在网页中ID

     * @param targetName 目标元素在flashName

     */

关于Flash自动化,我将另开一文讲解(传送门:http://qa.blog.163.com/blog/static/19014700220121278928634/),里面会用到JS执行器。

    public void flexClick(String flashID, String targetName) {

    }

   

    /**

     * 获取Flash中元素左上角的(浏览器,非屏幕)坐标

     * @param flashID    flash本身在网页中ID

     * @param targetName 目标元素在flashName

     * @return           坐标[x,y]

     */

    public int[] flexGetPosition(String flashID, String targetName) {

    }

   

    /**

     * 设置BrowserEmulator各次操作之间的时间间隔,单位毫秒

     */

Selenium2.0原生提供setSpeed函数,用以控制用例执行速度,但是,至少至