Selenium使用单例模式

         在项目中使用Selenium进行自动化,非常自然想到用单例对WebDriver进行管理,出于如下考虑:

        1)提高成功率。多个实例会使得出现多个浏览器窗口,界面识别会出现问题,影响成功率。

        2)关键对象易维护。整个Selenium项目中,Webdriver是最重要的一个对象,通过单例对其进行控制,在使用时更简单。

         当然,也牺牲了效率,比如就无法通过多线程进行多个Driver并行执行用例,但对于项目初期,个人认为稳定才是关键,毕竟自动化可以7*24跑,牺牲的效率通过SeleniumGrid可以补充。同时,在网上看到更多的也是单例控制WebDriver。

        单例模式简介:

       单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例。即一个类只有一个对象实例。

        项目中用是为保证测试中WebDriver只有一个实例,提高成功率。

      单例模式的三种实现方式。

       Selenium使用单例模式

       Selenium使用单例模式

       Selenium使用单例模式

       本项目使用的是懒汉方式,具体实现如下。

    Selenium使用单例模式