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

    Microsoft Edgeを操作するVBAマクロ(WebDriver編)

    Microsoft Edge Dev Blogに「Bringing a…

  2. Office関連

    ヘッドレス ChromeとSeleniumBasicでWebページ全体のスクリーンショットを撮る方法…

    先日、ヘッドレス ChromeでWebページ全体のスクリーンショットを…

  3. Windows 10

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

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

  4. Windows 10

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

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

  5. Windows 10

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

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

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP