前端测试 通过 Selenium ChromeDriver 无法 find 页面元素但 FriefoxDriver 却是正常的

testly · 2015年07月02日 · 最后由 hello 回复于 2016年03月16日 · 3075 次阅读

问题描述

通过 Selenium ChromeDriver 无法 find 页面元素但 FriefoxDriver 却是正常的。

大伙可以试试,以这个页面为栗子:- 参考网页

这个页面的元素层级是这样的:

测试 Code:

(我 selenium 版本是 2.45)
目的(打印出这个页面的 Source)或者也可以定位任何一个元素


package com.Test.Version.apps;

import java.util.concurrent.TimeUnit;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;



public class test {


    public static  void main(String[]args) throws InterruptedException
    {
        WebDriver driver = null;
        try
          {
            System.setProperty("webdriver.chrome.driver","C:/Users/workspace/chromedriver.exe");
            driver = new ChromeDriver();
            String baseUrl = "http://m.jiuxian.com/m_v1/user/login";
             driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
            driver.get(baseUrl);    
                      //打印Soure
            System.out.println(driver.getPageSource());
          }
        catch(Exception e)
          {
             driver.quit();
          }

    }
}

错误 log:

Starting ChromeDriver (v2.9.248315) on port 12858
[303.808][SEVERE]: Timed out receiving message from renderer: 299.503
[313.810][SEVERE]: Timed out receiving message from renderer: 10.000
timeout: Timed out receiving message from renderer: 10.000
  (Session info: chrome=43.0.2357.130)
  (Driver info: chromedriver=2.9.248315,platform=Windows NT 6.1 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 309.99 seconds
Build info: version: '2.44.0', revision: '76d78cf', time: '2014-10-23 20:02:37'
System info: host: 'SH591-PC', ip: '10.200.15.151', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_67'
Session ID: c4373b5abc3743b151a04c1ec28a02bf
Driver info: org.openqa.selenium.chrome.ChromeDriver

nable to receive message from renderer
错误:从渲染器接收消息超时

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 9 条回复 时间 点赞

贴的时间为啥 2014 年的,更新下 driver 吧,太老了 2.9

Exception 里面说 timeout 么~要么你的 url ping 不通,要么 server 拿到资源但是解析超时咯~

url ping 不通 咋可能呢,我都可以访问到,这里是拿页面静态源码

#3 楼 @testly 我随口说说。。有的时候 proxy 会导致这个问题~

没什么问题
selenium 2.46
chromedriver 2.16
chrome 42

#5 楼 @sanlengjingvv 把你拿到的元素截图看一下!

#6 楼 @testly
额错咧,手动刷新了一下 PageSource 就打出来了。
然后 Chrome 我试了 testerhome 和百度是正常的。
JS 也可以
((JavascriptExecutor)driver).executeScript("$('#subbtn1').click();");

@testly 这个问题你解决策略是什么?

@testly 遇到的和你问题一样,头大。。。。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册