Драйвер Selenium — как использовать один и тот же новый драйвер в разных классах C#

Мне нужно знать, как мы можем использовать одни и те же экземпляры Selenium Driver в разных классах? Итак, я создал экземпляр драйвера в классе, используя код:

IWebDriver driver = new ChromeDriver("C:/Users/Krishna/source/repos/G1ANT.Addon.YouTube/packages/Selenium.Chrome.WebDriver.83.0.0/driver");

Итак, мне нужно использовать этот экземпляр в новом классе, как я могу это сделать?

Благодарю вас


person Krishna Rajule    schedule 17.07.2020    source источник
comment
создайте вспомогательный класс и поместите IWebDriver в качестве статического свойства этого класса. Используйте его в другом месте   -  person Beingnin    schedule 17.07.2020


Ответы (1)


Самый простой подход — поместить драйвер в статическое поле другого класса, как показано ниже. Или вы можете использовать одноэлементный шаблон проектирования для возврата экземпляра драйвера один и только один раз во всем приложении.

public class DriverHelper
{
    public static readonly IWebDriver Driver = new ChromeDriver("C:/Users/Krishna/source/repos/G1ANT.Addon.YouTube/packages/Selenium.Chrome.WebDriver.83.0.0/driver");   

}

Затем получите доступ к драйверу, например

var _driver = DriverHelper.Driver;
person Beingnin    schedule 17.07.2020