問題

現在、私の2週間目に、特定のテストがローカルで完全に実行される理由を調べようとしましたが、VSTSエージェントに追い出されたときに失敗します。

プログラムの流れ:

  • テーブルから行を選択する
  • 「Verify」ボタンをクリックします。
  • CSSオーバーレイは画面を暗くし、中央のスピナー
  • トースターは、検証を開始すると言って左下にポップアップします
  • 約1.5分の時間経過、スピナースピン
  • CSSオーバーレイが削除されました
  • トースターが左下にポップアップし確認が成功しました

私は途中でスクリーンショットとデバッグ出力を持っており、失敗は "CSSオーバーレイが削除されるのを待っている"ステージにあります。タイムアウトを待っているので、タイムアウトの長さが重要です。

Overlay and spinner in progress

スクリーンショットは、検証プロセスが正常に完了したにもかかわらず、CSSオーバーレイとスピナーが回転していることを示しています。ほぼ時間がかかっているようです。

シナリオと結果:

  • ローカルVisual Studioから実行する - PASS
  • VSTSエージェント - ファイル
  • ビルド - PASSとして正確なコマンドラインをリモートインして渡すことでVSTSエージェントを手動で実行します(これは私を傷つけるものです!)
  • Webdriverのダウングレード/アップグレード - 違いはありません
  • ヘッドレス/フルモード - 違いはありません
  • さまざまなタイプの待機を使用する - 違いはありません
  • CSSの代わりにToasterポップアップを待っています - 違いはありません

  ベストアンサー

のドキュメントから注意するもの:

サービスとして実行するように設定されているエージェントは、Seleniumテストを実行できます ヘッドレスブラウザのみ。ヘッドレスブラウザを使用していない場合は、 または、デスクトップアプリケーションのUIテストを実行している場合は、Windowsエージェントが必要です auto-logonで対話的なプロセスとして実行するように設定する 有効です。

Headlessを実行しようとしたという事実は、サービスとして実行していてもエラーが発生していても、これはあなたの問題ではないかもしれないということを意味するかもしれません。場合によっては、マシンが将来のテスト実行やビデオ録画をログアウトしたり、画面解像度を変更したりすることで問題が発生しました。ドキュメントは、これを防ぐ方法について続行します。

リモートデスクトップを使用してエージェントがあるコンピュータにアクセスする場合 auto-logonで実行し、単にリモートデスクトップを切断する コンピュータがロックされ、これを実行するUIテストが発生する エージェントが失敗する可能性があります。これを避けるために、リモートでtsconコマンドを使用してください リモートデスクトップから切断するコンピュータ。例えば:

 %windir%\System32	scon.exe 1 /dest:console
 

この例では、「1」という数字はリモートデスクトップのIDです セッション。この番号はリモートセッション間で変更される可能性がありますが、 タスクマネージャで表示されます。あるいは、現在の検索を自動化する セッションID、次のコードを含むバッチファイルを作成します。

 for /f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do (  
    %windir%\System32	scon.exe %%s /dest:console 
) 
 

バッチファイルを保存してデスクトップショートカットを作成し、ショートカットを変更する 「管理者として実行」するプロパティ。これからバッチファイルを実行する ショートカットはリモートデスクトップから切断されますが、UIは保存されます セッションと UI テストの実行を許可します。

  同じタグがついた質問を見る

c#cssselenium-webdriverazure-devopsautomated-tests