2017-01-17 8 views
0

Microsoft Release Management 2013では、Powershell Executorのステップで、Windowsバッチファイルをトリガーするステップを設定しました。このバッチファイルは、別のサーバーで実行されます。これは、App Serverでも発生します。実験として、IEを開いてGoogleホームページのURLにアクセスしてブラウザを閉じる簡単なテストケースがあり、スクリーンショットもキャプチャされます。 RMからジョブを実行すると、Seleniumログはブラウザが起動しテストが成功したと言います。しかし、スクリーンショットを確認すると、それは単なる黒い画面に過ぎません。これらはすべて、RMを実行しているのと同じユーザーであるWindowsサービスアカウントユーザーとして実行されます。このユーザーには、ログオン権限はありません。Selenium with Windows Release Mangement

自分のIDでAppサーバーにログインし、手動でバッチファイルを実行すると、スクリーンショットが正しく取得されます。 私は黒い画面に関するいくつかのオンライン投稿を読んだ。画面がロックされているため、スクリーンショットが黒であると人々は言いました。これは、RM Powershellエグゼキュータのステップをサービスアカウントではなく他の資格情報で実行する必要があることを意味しますか?はいの場合、どうすればいいですか?いくつかの提案では、VNCをインストールするために言及されました。この状況に関連していますか?

私はかなり新しいWindowsです。私は主にLinuxシステムで作業しており、ここでこの問題をデバッグするように要求されています。どんな指針/指導も高く評価されます。ありがとうございました!

答えて

0

最終的にはこれが機能するようになりました。

バッチスクリプト内でtestNG seleniumテストを呼び出していました。このスクリプトは、Powershell Executorタスク内のRMで指定されています。注意すべき主なポイントは、Powershell executorタスクでは、まず、cd(change directory)コマンドを使用して、Seleniumスクリプトが存在するディレクトリに変更する必要があります。次に、同じPowershell Executorタスクで実行するバッチスクリプトの完全パスを指定します。このcdコマンドは非常に重要です。これがなければ、バッチスクリプトは実行されますが、その中のセレンのステップはうまくいかないでしょう。最終出力では漠然とした "設定エラー:1"が表示されます。

私たちは、IEブラウザでAutoITを使用してウェブサイト認証を担当しました。

0

展開エージェントは、対話型サービスとして実行されません。 Seleniumテストを直接起動するには、多くの問題が発生します。私はそれを達成した方法を示す数年前にblog postを書きました。基本的に、Seleniumハブを使用してエージェントマシンから対話形式でテストを実行します。

+0

私にこれを手伝ってくれてありがとう! 私は、RM Powershellエグゼキュータのステップで「cd」コマンドを追加しないという単純なケースであった解決策を見つけ出すことができました。私はここに私の答えを掲載しました。 – nnair900