テスターですが何か?

ホビープログラマ略してHPです

Watin入門(1) – 開発環境の準備 –

leave a comment »

Watin入門連載の第1回です。今回はWatinを使用してプログラミングを行う環境を準備し、ブラウザを起動するサンプルを作成します。

 

Watin本体のダウンロード


ここからWatinをダウンロードします。エントリー作成時点(2011年3月5日)では、2.0が最新版の貯め、「2.0 Final」をダウンロードしました。

image

ダウンロードしたファイルを解凍すると、以下のフォルダが作成されます。

WatiN-2.0.50.1179-net-2.0

– bin → コンパイル済みアセンブリ

– example → サンプルソース

– mozilla → FireFox用アドオン

– source → Watin本体のソース

 

ソリューションの作成


Visual Studioを起動してソリューションを作成します。今回の連載ではVisual C# 2010 Expressを使用します。プロジェクトはコンソールアプリケーションを選択しました。

image

 

参照設定


参照設定から、Watinのアセンブリを参照します。「(ダウンロードしたWatinのディレクトリ)\bin\net4.0\WatiN.Core.dll」を参照設定します。

image

プロジェクトの設定から、対象のフレームワークを「.NET Framework 4.0」に変更します。デフォルトのClient ProfileではWatinを参照してビルドすることが出来ません。プロジェクトの設定は、C#の場合は「Property」をダブルクリック、VBの場合は「My Project」をダブルクリックして行うことが出来ます。VBの場合は、「コンパイル」タブ内の一番下の「詳細コンパイルオプション」から指定することが出来ます。

image

そして、ソースの先頭に以下を記述してWatinの名前空間をインポートします。

using WatiN.Core;

以上で、Watinを使用するための準備は完了です。

 

ブラウザの起動


Watinを呼び出す処理を記述する前に、プログラム自体をシングルスレッドで動作させることを宣言しなければなりません。「System.Threading」名前空間をインポートし、メソッドに「STAThread」属性を指定します。この設定はC#のみ必要になります、VBの場合はSTAThreadが既定で設定されているため、明示的に指定する必要はありません。

なぜこの設定が必要かというと、使用するCOMコンポーネント(この場合はIE)がスレッドセーフではないためです。詳細な説明は割愛しますが、気になる人はこのサイトに記述されているので参考にしてください、MSDNを検索するともっと深い情報が出てきます。

ソースは以下のようになります。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using WatiN.Core;

namespace Series1
{
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
        }
    }
}

 

実際にブラウザを起動して、指定されたURLへ移動する記述を行います。Watin.Core.IE型のインスタンスを生成すると、空白ページを開いた状態でIEが起動します。IE型のGoToメソッドを呼び出し、引数にURLを指定することで、指定したURLをIEで表示することが出来ます。

// IEを起動
var Browser = new IE();

// Bingのトップページへ移動
Browser.GoTo("http://www.bing.com/?cc=jp");

IE起動時点で、特定のページを表示させたい場合は、IE型のコンストラクタにURLを指定します。

var Browser = new IE("http://www.bing.com/?cc=jp");

 

今回の内容はここまでです。次回はテキストボックスの入力や、ボタンのクリック操作を行います。

今回作成したソリューションはSkyDriveにあげておきます、C#VBそれぞれ作成したので興味ある人はダウンロードしてください。

Written by david9142

2011年3月6日 @ 12:08 AM

カテゴリー: Watin

Tagged with , ,

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。