2012年の6月頃から、Windows上でのWeb ブラウザ自動操作について模索してきました。
自分用の覚書として、その変遷を残しておこうと思います。
【1. マクロ系ソフトを使う】
当初はマクロ系のソフト(USWCやHiMacroEx)でトライ。
記録した操作がスクリプト化されるため、
それをベースに編集していくことで、詳細を変更していくというイメージです。
特にUSWCの方はウェブを探せばサンプルも多く見つかりますし、
おそらく色々できるのだと感じました。でも、根気が足りず早々にリタイア。
コード補完ができるエディタとか、そういう環境が欲しいのですよ。
【2. 自動操作用のプログラミング言語を使う】
次に試したのは、AutoIt というWindowsのGUI自動操作用スクリプト言語です。
付属エディタのSciTEもコード補完が効くし、exe 変換も簡単。ライブラリも充実。
ただし目的(ブラウザ自動操作)に合うかというと、汎用的すぎる印象を受けました。
また、IEのライブラリはあっても、その他は不十分なために自前で補完が必要です。
私がメインで使用しているブラウザは、Firefox / Iron(Chromium ベース)。
これらのブラウザを簡単にかつ柔軟に操作できる、そういう仕組みを望んでいるのですよ。
【3. Web アプリケーション テスト用のフレームワーク(C#)】
そして行き着いたのが、ブラウザを自動操作するためのフレームワークです。
大仰な気もしますが、わざわざマクロ用のスクリプトを覚えなくていいことに惹かれました。
WatiN を使用し始めるも、ブラウザのサポート範囲(IE:9以下,Fx:3以下)が狭いのが難点でした。
更新される気配もないし、この為にFirefox 3.6.28を入れたままにするのもセキュリティが心配。
そんな折、Selenium WebDriver を見つけました。2012年8月くらいのことです。
対応ブラウザも幅広く、更新頻度も高く、C#(.NET)も対応。目から鱗が落ちました。
以来、Stack Overflow の英語と格闘しながら拙いコードを作成することが楽しいです。
NUnit と組み合わせれば、Web テスト自動化も捗りそう。手段が目的になってもいいです。
0 件のコメント:
コメントを投稿