• selenium使用中遇到的问题


    1、Exception in thread "main" org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: XP
    Build info: version: '2.16.1', revision: '15405', time: '2012-01-05 12:30:12'
    解决办法:
    
    我们只要在WebDriver driver = new FirefoxDriver(); 前面指定我们浏览器的具体信息即可:
    
    System.setProperty ( "webdriver.firefox.bin" , "E:/Program Files/Mozilla Firefox/firefox.exe" );
    
    WebDriver driver = new FirefoxDriver();
    
     
    
    2、Exception in thread "main" Java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, seehttp://code.google.com/p/selenium/wiki/ChromeDriver. The latest version can be downloaded fromhttp://code.google.com/p/chromedriver/downloads/list
     at com.google.common.base.Preconditions.checkState(Preconditions.java:176)
     at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:105)
     at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:75)
     at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:107)
     at com.example.tests.Selenium2ForChrome.main(Selenium2ForChrome.java:18)
    出现这个错误的原因是因为谷歌浏览器和selenium不是原生的,需要在谷哥里面装插件,插件下载地址是http://code.google.com/p/chromedriver/downloads/list。
    
    暂时还没解决好。
    
    
    3、The path to the driver executable must be set by the webdriver.ie.driver system property; for more information, see http://code.google.com/p/selenium/wiki/InternetExplorerDriver. The latest version can be downloaded from http://code.google.com/p/selenium/downloads/list 
    
    该问题的错误原因和上面的一样,用IEdriver的时候也需要装插件,去http://code.google.com/p/selenium/downloads/list 下载对应的插件版本,然后修改代码如下:
    
    
    [java] view plain copy
    File file = new File("C:/Selenium/iexploredriver.exe");  
    System.setProperty("webdriver.ie.driver", file.getAbsolutePath());  
    WebDriver driver = new InternetExplorerDriver();  
    参考来源:http://stackoverflow.com/questions/10995314/driver-executable-must-be-set-by-the-webdriver-ie-driver-system-property
    
    
    4、Exception in thread "main" org.openqa.selenium.remote.SessionNotFoundException: Unexpected error launching Internet Explorer. Browser zoom level was set to 119%. It should be set to 100% (WARNING: The server did not provide any stacktrace information)
    Command duration or timeout: 5.98 seconds
    
    错误原因:IE浏览器的比例调大了,按ctrl+0,可以恢复原来的大小,即可。PS:这种错误真是。。。让人无语。
    
     
    
    5、My97DatePicker控件输入日期问题
    
    之前用的是seleniumIDE自己录制的代码,结果回放的时候总是说元素找不到,整的我很头疼,后来发现一个简单的办法,就是直接把值输入日期控件的输入框当中来,
    
    [java] view plain copy
    driver.findElement(By.id("bookDay")).clear();  
            driver.findElement(By.id("bookDay")).sendKeys("2013-06-17");  
    
    不过我觉得这个方法不好,还在寻找其他办法。
    在网上找了下,有下面这个方法,问题是我看不懂。。。
    
    http://lyh875.blog.163.com/blog/static/21428005820133192552198/
    [java] view plain copy
    selenium.selectFrame("relative=up");  
      //点击日期文本框  
      selenium.click("days");  
      //必须增加Thread.sleep(),不增加会报错,提示找不到下一条命令中的元素  
      //另,尝试使用waitForPageToLoad代替,会超时出错;  
      Thread.sleep(5000);  
      //当前为4月,向前移两个月  
      selenium.click("//div[@id='dpTitle']/div[2]");  
      selenium.click("//div[@id='dpTitle']/div[2]");  
      //点击2009-02-02  
      selenium.click("//td[@onclick='day_Click(2009,2,2);']");  
  • 相关阅读:
    根据当前日期转目的国地区时间戳
    时间戳转换作用域问题
    字符串拼接问题
    input全选和取消全选
    循环遍历渲染模块
    jQuery实现获取选中复选框的值
    React组件
    underscore.js依赖库函数分析二(查找)
    underscore.js依赖库函数分析一(遍历)
    React入门
  • 原文地址:https://www.cnblogs.com/xinxin1994/p/7081783.html
Copyright © 2020-2023  润新知