Как мога да използвам webdriver, за да позволя на потребителя да избере различен браузър

Selenium предоставя много видове драйвери за браузъри, така че искам да позволя на потребителя да избере какъв вид иска.

Но в програмирането трябва да използваме глобална променлива. (използвам C#)

Не мога да използвам switch или 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