Web ページとの対話をスクリプト化するための Don Libes の *expect* ツールに相当するものはありますか?

StackOverflow https://stackoverflow.com/questions/609177

質問

インタラクティブ コンソール アプリケーションの古き良き時代に、Don Libes は というツールを作成しました。 期待する, これにより、ユーザーが行うのと同じように、これらのアプリケーションと対話する Tcl スクリプトを作成できるようになりました。Expect には 2 つの大きな利点がありました。

  • そうでなければ手作業で退屈に繰り返す必要があった対話をスクリプト化することが可能になりました。典型的な例は、ダイヤルアップ インターネット アクセス地獄 (PPP 以前の時代) でした。

  • 回帰スイートの一部として、独自の対話型アプリケーションをプログラム的にテストするスクリプトを作成することが可能でした。

現在、ほとんどの対話型アプリケーションはコンソールではなく Web 上にあります。したがって、私の質問は次のとおりです。Expect がプログラムでコンソール アプリケーションと対話する機能を提供するのと同じように、プログラムで Web ページや Web フォームと対話する機能を提供するツールはありますか?

(私が知っている中で最も近いことは、 チキンフット.)

役に立ちましたか?

解決

Selenium

を探しているかもしれません

他のヒント

使ったことがある セレン RC を Python と組み合わせて、Web ページの対話をプログラムで駆動します。これにより、フォームと入力を操作し、その結果を測定するかなり広範なユーザー テストを作成できるようになりました。

をチェックしてください セレン Firefox 上の IDE (前述)。これにより、IDE 自体または Remote Control アプリを使用して、ブラウザーでテストを記録し、再生することができます。

Perl Mechanize は、この正確な問題に対して非常にうまく機能します。

HTTPSおよび一部の認証の問題は時々注意が必要です。将来それらについての質問をいくつか投稿します。

私は以前の人生でたくさんのExpectの仕事をしており、Don LibesのExpect本は今まで見た中で最もよく書かれ、最も啓発的な技術書の一つだといつも思っていました。

伝承私は、PerlのWWW :: Mechanizeライブラリがあなたが望むものであると言います。上記で、ドキュメントの検索に問題があったことに注意してください。優れたドキュメントがあります! search.cpan.orgでモジュールの配布を検索し、すべてがパッケージ化されているものを確認します。 FAQ、例付きのクックブックなどがあります。さらに、私はいつもウェブで助けを得ることができました。ここで入手できない場合は、use.perl.orgまたはperlmonks.orgで試してください。 WWW :: Mechanizeの著者であるAndy Lesterは、 Stack Overflowに参加しています。 (彼はまた、あらゆる面でフレンドリーで親切な人です。)

WWW :: MechanizeにはExpectのautoexpectプログラムに類似したプログラムもあると考えています。このプログラムを実行するプロキシプロセスをサーバーとして設定し、ブラウザをプロキシとして指定し、自動化するアクションを実行します。 、そしてプロキシプログラムは、プロジェクトのベースとして使用するWWW :: Mechanizeプログラムを提供します。 (autoexpectのように動作する場合は、そこから変更を加えたいでしょう。)

上記のように、WWW :: Mechanizeは、たぶんプログラム可能なブラウザ(より正確には、Webクライアントまたはhttpクライアント)です。前回見たとき、JavaScriptをサポートするための作業も進行中でした。

Seleniumに加えて、Ruby / Railsを行っている場合は、 Webrat があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top