51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1750|回复: 2
打印 上一主题 下一主题

捕获弹出div的text问题困扰我好几天,请大神帮忙!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2015-4-23 14:38:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用环境:
java
selenium2
使用场景:
点击确定后,请求后台webservice返回结果后弹出一个div提示“操作成功!”后消失,之后页面刷新。
原码如下(jquery)
function(result){
                                                if(result.isSuccess=="true"){
                                                        $.dialog.tips(result.tips);//这就是弹出的div
                                                        location.reload();//这是页面刷新

我写了个方法如下,如果页面不刷新,能成功捕获。所以能定位是因为页面刷新而抛的异常:
rg.openqa.selenium.StaleElementReferenceException: Element not found in the cache - perhaps the page has changed since it was looked up
Command duration or timeout: 834 milliseconds
我的方法:
public String getDialogTips(WebDriver webDriver){
        JavascriptExecutor javascriptExecutor = (JavascriptExecutor)webDriver;
        String tip="";
       while (true) {
            long begin=System.currentTimeMillis();
            WebElement div =(WebElement)javascriptExecutor.executeScript("return $('.aui_content').find('div').get(0);");
            System.out.println("time=="+(System.currentTimeMillis()-begin));
            if(div!=null){
                tip = div.getText();
                System.out.println("tip=="+tip);
                if (tip.length() > 0) {
                    break;

                }

            }


        }
        return tip;
    }
请救大神如果捕获这个提示框内容啊???~~~~~~~~~~~~困惑啊!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2015-4-23 14:56:25 | 只看该作者
程序运行到 tip = div.getText()时报的错
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-3-16 21:26
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    3#
    发表于 2015-4-28 22:46:43 | 只看该作者
    页面刷新之后是要重新去find元素的,然后才可以操作,这是webdriver的机制。不然就是报你上面的错误,element not found in cache。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-21 06:23 , Processed in 0.061971 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表