「Selenium」タグアーカイブ

c#:Seleniumの準備

そうなのかNuGet使えるのね?
アホな自分に情けなく
1
VSでコンソールアプリケーションのプロジェクトを新規作成する
NuGetから各種パッケージを取得
Selenium.Support
Selenium.WebDriver
Selenium.WebDriver.ChromeDriver
Selenium.WebDriver.IEDriver
WebDriver.GeckoDriver 3
各ブラウザーのウェブドライバーを作成するクラスを作成
2
NuGetから各種パッケージを取得
packages.config

googleにアクセスしてSelenium2と検索する部分の作成
WebDriver.cs
internal class WebDriverFactory
{
public static IWebDriver CreateInstance(AppSettings.BrowserName browserName)
{
switch (browserName)
{
case AppSettings.BrowserName.None:
throw new ArgumentException(string.Format(“Not Definition. BrowserName:{0}”, browserName));

case AppSettings.BrowserName.Chrome:
return new ChromeDriver();

case AppSettings.BrowserName.Firefox:
FirefoxDriverService driverService = FirefoxDriverService.CreateDefaultService();
driverService.FirefoxBinaryPath = @”C:\Program Files (x86)\Mozilla Firefox\firefox.exe”;
driverService.HideCommandPromptWindow = true;
driverService.SuppressInitialDiagnosticInformation = true;
return new FirefoxDriver(driverService);

case AppSettings.BrowserName.InternetExplorer:
return new InternetExplorerDriver();

case AppSettings.BrowserName.Edge:
return new EdgeDriver();

case AppSettings.BrowserName.Safari:
return new SafariDriver();

default:
throw new ArgumentException(string.Format(“Not Definition. BrowserName:{0}”, browserName));
}
}
}

AppSettings.cs

internal static class AppSettings
{
public enum BrowserName
{
None,
Chrome,
Firefox,
InternetExplorer,
Edge,
Safari
}
}

4
googleにアクセスしてSelenium2と検索する部分の作成
Program.cs

internal class Program
{
private static void Main(string[] args)
{
// AppSettings.BrowserName.Firefoxを変更することによって対象のブラウザを変更できます
using (IWebDriver webDriver = WebDriverFactory.CreateInstance(AppSettings.BrowserName.Chrome))
{
// https://www.google.co.jp に遷移させる
webDriver.Url = @”https://www.google.co.jp”;

// #lst-ibの要素を取得する
IWebElement element = webDriver.FindElement(By.CssSelector(“#lst-ib”));

// 上記取得した要素に対してテキストを入力してサブミット
element.SendKeys(“Selenium2”);
element.Submit();

// 一瞬で完了するため3秒スリープ
Thread.Sleep(TimeSpan.FromSeconds(3));

// ブラウザを閉じる
webDriver.Quit();
}
}
}