3

Windows 上の IE で Web アプリをテストするために、Watir と AutoIT を使用します。AutoIT は、Watir がネイティブの Windows ダイアログ (アップロード用の Windows ファイル ダイアログなど) を処理できない場合に使用されます。

AutoIT のため、Watir コードからの AutoIT 操作には Interactive Desktop セッションが必要なため、タスク スケジューラを使用してテストを実行することはできません。

いくつかのトリック (RDP からの RDP など) を試しましたが、成功せず、真の自動化を行うことができません。

何か案は?真のエンド ツー エンド テストの自動化を達成するのに役立つ場合は、AutoIT を置き換えることを検討してください。

4

3 に答える 3

2

サービスとして実行されている TeamCity エージェントからテストの実行を開始したときに、同様の問題が発生しました。これは、インタラクティブではないサービスからインタラクティブなプロセスを実行しようとしているためです。TeamCity エージェントを通常のプロセスとして実行するように切り替えたところ、問題は解消されました。

タスク スケジューラを使用するだけでなく、これを実行するためにビルド管理サーバーを調べたいと思うかもしれませんが、いずれにせよ、テスト プロセスをサービスとして実行することは避けたいでしょう。

于 2010-10-15T21:09:41.177 に答える
1

ユーザー権限で実行されているスケジューラを使用する必要があります。私は以前にこれを行うために CruiseControl.Net を使用しました。

プロセスにユーザー権限がない場合、プロセスはデスクトップ ウィンドウにアクセスできません。これは、Watir、AutoIT、またはその他のツールを使用している場合に必要なものです。これは権限の問題であり、ツールの問題ではありません。

于 2010-10-05T21:32:59.577 に答える
-1

私はWatirを交換します。;)

Watirについてはよくわかりませんが、InternetExplorer.ApplicationCOMオブジェクトのラッパーにすぎないと思います.AutoItからすべての機能を使用してObjCreate("InternetExplorer.Application")、またはセクションにリストされているユーザー定義関数を介して簡単に使用できますIE Management.

AutoIt だけですべてのテスト シナリオをスクリプト化できると思います。インタラクティブなデスクトップ セッションが必要な理由

于 2010-10-05T18:48:47.637 に答える