51Testing软件测试论坛

标题: 在UI自动化测试过程中,启动浏览器报错 [打印本页]

作者: 测试积点老人    时间: 2020-3-26 10:53
标题: 在UI自动化测试过程中,启动浏览器报错
在UI自动化测试过程中,启动浏览器报错
报错信息:Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: call function result missing 'value'


作者: 海海豚    时间: 2020-3-27 09:24
因为chromedriver版本太旧了
作者: bellas    时间: 2020-3-27 09:32
浏览器的版本有关
作者: abcsell    时间: 2020-3-27 09:34
缺少值
作者: qqq911    时间: 2020-3-27 10:56
检查下代码
作者: jingzizx    时间: 2020-3-27 12:26
版本是否一致
作者: 旺达    时间: 2020-5-21 17:09
  现在很多网页内容都是动态生成的,动态页面信息的提取可以使用selenium。提取动态页面信息的
  其中一种方法就是启动浏览器执行js代码,那么第一步就是要先启动浏览器。
  下面上代码:
  import org.openqa.selenium.WebDriver;
  import org.openqa.selenium.chrome.ChromeDriver;
  public class ChromeTest{
  public static void main(String[] args) {
  System.setProperty("webdriver.chrome.driver","D:\\ChromeDriver\\chromedriver_win32\\chromedriver.exe");
  //新建一个WebDriver 的对象,但是new 的是chrome的驱动
  WebDriver driver =new ChromeDriver();
  //打开指定的网站
  driver.get("http://www.baidu.com");
  System.out.println(driver.getTitle());
  /**
  * dr.quit()和dr.close()都可以退出浏览器,简单的说一下两者的区别:第一个close,
  * 如果打开了多个页面是关不干净的,它只关闭当前的一个页面。第二个quit,
  * 是退出了所有Webdriver所有的窗口,退的非常干净,所以推荐使用quit最为一个case退出的方法。
  */
  driver.quit();//退出浏览器
  }
  }
  运行结果如下图:
[attach]128839[/attach]
  以上结果没有输出“百度一下,你就知道”,因此出现错误。此错误让我纠结了很长时间,最终终于解决。
作者: 旺达    时间: 2020-5-21 17:17
大家仔细看的话,可以看到上图中所报出的一个warning:The server did not provide any stacktrace information
其实,在这里代码是没有错的,造成错误的原因是我用的chromedriver版本与chrome浏览器的版本不对应。
然后我下载了一款对应我chrome浏览器版本的chromedriver,再次运行代码结果如下:[attach]128840[/attach]
这样就OK了。





欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2