Selenium+log4j+eclipse相关问题及解决方案

发表于:2015-8-27 10:25

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:dreamsyeah    来源:51Testing软件测试网采编

  问题一:
  如何获取新打开的浏览器窗口,用selenium进行UI自动化测试时,经常会遇到这个问题,现总结如下:
  // 存储现在窗口句柄
  String winHandleBefore = driver.getWindowHandle();
  //跳转到新打开的窗口
  for(String winHandle : driver.getWindowHandles()){
  driver.switchTo().window(winHandle);
  }
  // 执行相关操作
  ...
  // 关掉当前新的窗口
  driver.close();
  // 跳转到之前的窗口
  driver.switchTo().window(winHandleBefore);
  // 接着进行相关操作
  问题二:
  在项目中添加log时出现了WARN,如下所示:
  log4j:WARN No appenders could be found for logger .
  log4j:WARN Please initialize the log4j system properly.
  log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
  费劲周折也没找到原因:最后在Stack Overflow上找到了答案,希望与君共勉。
  有两种方法:
  第一种:在卖你代码中加上如下代码
  BasicConfigurator.configure();
  第二种:添加如下标准log4j.properties文件到classpath
  # Set root logger level to DEBUG and its only appender to A1.
  log4j.rootLogger=DEBUG, A1
  # A1 is set to be a ConsoleAppender.
  log4j.appender.A1=org.apache.log4j.ConsoleAppender
  # A1 uses PatternLayout.
  log4j.appender.A1.layout=org.apache.log4j.PatternLayout
  log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
  问题三:
  eclipse项目报错如下所示:
  Project 'MyProgram' is missing required library: 'D:\Selenium_workspace\MyProgram\src\test\resource\selenium-server-standalone-2.45.0.jar'
  The project cannot be built until build path errors are resolved
  原因是项目所在目录中.classpath文件中存在如下声明:
  (之前没有在maven中添加selenium的依赖,手动添加的selenium的环境变量,当用maven添加selenium依赖后,将此目录中的selenium删除,eclipse找不到手动设置的seleniumjar包的位置导致出错。),将此行删掉问题就解决了。
  <classpathentry kind="lib" path="D:/Selenium_workspace/MyProgram/src/test/resource/selenium-server-standalone-2.45.0.jar"/>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号