9

UI Automation と Nunit を使用して、WPF アプリケーションのテスト UI テストを作成します。ローカル マシンから実行したときに正常に動作するテストを作成しました。これらのテストは、ビルド サーバー (TeamCity を使用) で正常に実行されることはありません。アプリケーション ウィンドウを開いた後、ビルドが常にハングします。しかし、ログインしている場合 (リモート デスクトップ)、ビルド サーバーですべての UI オートメーション テストも正常に実行されます。したがって、アクティブなWindowsセッションの実行とおそらく関係があると思います。ビルド サーバーにアクティブな Windows セッションを作成するよう説得する方法や、これらのテストをビルド サーバーで実行するためのその他のソリューションはありますか?

4

4 に答える 4

3

多くのオプションはありません。私が知っている2つをリストします。最も好ましいオプションが最初です。

  • ビルド サーバーに仮想マシンをセットアップします。ビルドは仮想マシンで実行されます。ホスト (別名ビルドサーバー) をロックして、物事を安全に保つことができます。
  • 誰かを常にログオンさせておきます。このオフコースは、セキュリティ上の問題を引き起こします。マウス、キーボード、および画面を削除し、RDP などを介してのみビルドサーバーにアクセスすることで、この問題を少し軽減できます。

編集

このTestComplete FAQ項目を見てください: コンピューターがロックされているときに TestComplete はスクリプトを実行できますか?

于 2009-05-05T15:06:52.957 に答える
1

OK、私はここで推測しています。

システム アカウントではなく、ローカル ビルド サーバー ユーザーを使用して TeamCity サービスを実行してみてください。新しいビルドを開始する前に、そのアカウントで一度ログインする必要があるかもしれません。

于 2009-05-05T15:04:45.303 に答える
0

アプリケーションウィンドウを開いた後、ビルドは常にハングします。

UIをインスタンス化するテスト?これは機能しません。たとえば、モーダルダイアログを取得すると、ビルドがハングします。これが、アクティブなプレゼンテーションコードを具体的なビューから分離するためにMVPパターンが発明された理由です。

自動テストでモックビューを使用していますか?

于 2009-05-06T00:26:29.117 に答える