Selenium

C#からWinium WebDriverを使ってみた。

Winium – Windows向けソフトウェアでもSeleniumでテストしよう」記事で紹介されている、Windowsアプリケーションの自動操作を行うためのツールが「Winium」です。
名前の通り、Seleniumからの派生ですね。

今回はこのWiniumを.NETから使ってみたいと思います。

下準備

必要なパッケージはNuGetにあるので、まずは「Selenium WebDriver」と「Winium.WebDriver」をインストールします。

nuget install "Selenium.WebDriver"
nuget install "Winium.WebDriver"

ライブラリの準備ができたら下記サイトからWebDriver(Winium.Desktop.Driver.exe)をダウンロードして、適当なフォルダに保存します。

・Winium.Desktop.Driver
https://github.com/2gis/Winium.Desktop/releases

Winiumでメモ帳を操作するコード

準備ができたら、実際にコードを書いて動かしてみます。

/*
 * Winiumでメモ帳を操作するサンプル
 * @kinuasa
 * 
 * [要参照]
 * WebDriver(WebDriver.dll),
 * Winium.WebDriver(Winium.WebDriver.dll)
 */
using OpenQA.Selenium.Winium;

namespace Sample02
{
  class Program
  {
    public static void Main(string[] args)
    {
      var options = new DesktopOptions();
      options.ApplicationPath = @"C:\Windows\System32\notepad.exe";
      //Winium.Desktop.Driver.exeの場所指定
      WiniumDriver driver = new WiniumDriver(@"C:\System", options);
      driver.FindElementByClassName("Edit").SendKeys("Hello World.");
    }
  }
}

Winium_WebDriver_01

上記コードを実行すると、上図の通り、メモ帳が起動し「Hello World.」と自動的に入力されます。

おわりに

今回初めてWiniumを使ってみましたが、

“とりあえず使いづらい!!”

私はそう感じました。
Seleniumと同じようなコードの書き方ができるのは良いのですが、資料も少なく、エレメントの指定方法も分かりづらく・・・、これならば素直にUI Automation使った方が楽ではないかと思います。
(私は試していないのですが、UWPアプリやWindows Phone向けのアプリもテストできるらしいので、そちらの方面で使用すれば便利なのかもしれません。)


2015/12/25 追記:
Winium.Cruciatusについても記事を書きました。

・C#からWinium.Cruciatusを使ってみた。
//www.ka-net.org/blog/?p=6466

Selenium WebDriverを使用してMicrosoft EdgeとOfficeを連携させる。前のページ

C#からWinium.Cruciatusを使ってみた。次のページ

関連記事

  1. Windows 10

    WinAppDriver UI Recorderを試してみました。

    下記記事にある通り、「WinAppDriver UI Recorder…

  2. Windows 10

    Windows Application Driverを試してみました。

    Build 2016のセッション「UI Test Automation…

  3. Excel

    Microsoft Edgeのバージョンに合わせてWebDriverをダウンロードするVBAマクロ

    ブラウザーの制御に広く使われているWebDriverですが、ブラウザー…

  4. Windows 10

    Selenium(C#)でEdgeをいろいろ操作してみた。

    当ブログでも最近よく扱っているMicrosoft Edge、Selen…

  5. PowerShell

    ChromeDriverでBraveを操作するPowerShellスクリプト

    広告をブロックすることによって素早くページを読み込めるというブラウザー…

  6. Windows 10

    [Selenium]ExecuteScriptで指定した要素のIDを取得する。

    MSDN フォーラムにあった質問「Edge向けWebDriverでDO…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP