多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

聊聊Selenium不同webdriver的构造-自动化测试

更新时间:2022-03-25 09:42:47 作者:多测师 浏览:136

  序

  本文主要讨论Selenium不同webdriver的构造

  Selenium 2.0

  Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver(WebDriver 曾经是 Selenium 的竞争对手)。也就是说 Selenium 2 是 Selenium 和 WebDriver 两个项目的合并,即 Selenium 2 兼容 Selenium,它既支持 Selenium API 也支持 WebDriver API。

聊聊Selenium不同webdriver的构造-自动化测试

  支持的web driver

  ChromeDriver

  EventFiringWebDriver

  FirefoxDriver

  HtmlUnitDriver

  InternetExplorerDriver

  PhantomJSDriver

  RemoteWebDriver

  SafariDriver

  PhantomJS与Ghost Driver

  phantomis就是一个基于webkit的无界面浏览器,而ghost driver是phantomis的WebDriver Wire Protocol的js实现。

  后来ghost driver跟phantomjs合并在一起,内嵌在phantomis中,相当于现在的phantomis = ghost driver + phantomis浏览器

  driver特性

  chromedriver

  chrome driver的好处是支持mobile emulation

   Map<String, String> mobileEmulation = new HashMap<>();

  mobileEmulation.put("deviceName", "iphone 5");

  Map<String, Object> chromeOptions = new HashMap<>();

  chromeOptions.put("mobileEmulation", mobileEmulation);

  dcaps.setCapability(ChromeOptions.CAPABILITY, chromeOptions);

  firefoxdriver(geckodriver)

   FirefoxProfile profile = new FirefoxProfile();

  profile.setEnableNativeEvents(true);

  profile.setAcceptUntrustedCertificates(true);

  profile.setAssumeUntrustedCertificateIssuer(false);

  dcaps.setCapability(FirefoxDriver.PROFILE, profile);

  firefox的功能看起来相对鸡肋一些

  通用设置

   LoggingPreferences logging = new LoggingPreferences();

  logging.enable(LogType.PERFORMANCE, Level.ALL);

  logging.enable(LogType.BROWSER, Level.ALL);

  dcaps.setCapability(CapabilityType.LOGGING_PREFS, logging);

  dcaps.setCapability(CapabilityType.ForSeleniumServer.ENSURING_CLEAN_SESSION, true);

  doc

  Webdriver

  以上内容为大家介绍了自动化测试中的Selenium不同webdriver的构造,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/

联系电话

17727591462

返回顶部