Как я могу использовать webdriver, чтобы пользователь мог выбрать другой браузер

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

Но в программировании мы должны использовать глобальную переменную. (я использую С#)

Я не могу использовать переключатель или if/else, чтобы сообщить программе, что хочет пользователь.

Как я могу это решить?


person Sam    schedule 09.04.2012    source источник


Ответы (1)


Вы можете посмотреть на них:

RemoteWebDriver
IJavaScriptExecutor

все веб-драйверы являются дочерними классами или реализуют RemoteWebDriver и IJavaScriptExecutor, поэтому ваша глобальная переменная должна выглядеть так:

RemoteWebDriver webDriver;
IJavaScriptExecutor executor;

И вы инициализируете его, используя if else:

if(ie)   
    webDriver = new InternetExplorerDriver();
else if(firefox)    
    webDriver = new FirefoxDriver();

и так далее.

executor = (IJavaScriptExecutor)webDriver;
person Green Su    schedule 09.04.2012
comment
да, это работает. спасибо. Но у него все еще есть проблема. Я не могу использовать драйвер в другом классе, почему? - person Sam; 09.04.2012
comment
Как написан ваш класс? Эти глобальные переменные должны быть общедоступными, если вы хотите использовать их в другом классе. Или они находятся в одном пространстве имен? - person Green Su; 11.04.2012