web-dev-qa-db-ja.com

FirefoxとChromeブラウザの自動化

私はいくつかのブラウザを自動化する方法を探しています... FirefoxとChrome(今のところWindowsのみ)外部アプリケーション/プロセスから。

これらの線に沿って物事を行う方法はありますか?

  1. URLでブラウザを起動します
  2. ブラウザにページをロードしてもらい、スクリプトを実行します。
  3. DOMを検査します

参考までに、IEは、次のjavascriptを使用してシェルスクリプトで作成できるInternetExplorer.Applicationオブジェクトを使用して自動化できます。その後、DOMAPIをウォークします。

var ie = new ActiveXObject('InternetExplorer.Application');

ここでの動機付けのシナリオは、自動テストです。テストコードを含むページをロードし、テストの実行後に結果を収集したいと思います。

20
Nikhil Kothari

http://watin.sourceforge.net/

WatiNはまさにそれを行っており、最近追加されたと思いますChromeサポート

2011年6月22日更新:現在、WatiNはFirefox 2および3でのみ動作し、Firefiox 4では動作しません(そして、ほぼ確実に、本日リリースされたFirefox 5では動作しません)。また、この回答の時点では、Chromeサポートが追加されていたと思われますが、完全に焼き付けられたわけではなく、ホームページにサポートされているプラ​​ットフォームとしてリストされていないようです。

また、私の経験では、IE9にアップグレードすると、WatiNの速度が大幅に低下しました。これは2つの異なるマシンで見られ、IE8にダウングレードすると、両方のマシンでテストが高速化されました。

私は今でもWatiNを多用していますが、現在は主にビヘイビア駆動設計と機能回帰テストに使用されています。これらは通常、ブラウザー固有ではありません。次に、FFで手動でテストし、すべての進行テストでChrome。

2015年9月22日更新:Elmueは正しいです、WatiNはもう作業されていないようです。現在、自動受け入れテストのためにSeleniumを調査しています: http://www.seleniumhq.org

11
Mike Mooney

TestRを使用すると、IE、FF、およびChromeを自動化できます。 Edgeのサポートに取り組み始めましたが、時間がありませんでした。

https://github.com/BobbyCannon/TestR

Nugetパッケージを使用できます。

https://www.nuget.org/packages/TestR/

ここにいくつかの例があります。

https://docs.epiccoders.com/Page/35/TestR

0
Bobby Cannon